view_builder: do_build_step: handle unexpected exceptions

Exception are handled by do_build_step in principle,
Yet if an unhandled exception escapes handling
(e.g. get_units(_sem, 1) fails on a broken semaphore)
we should warn about it since the _build_step.trigger() calls
do no handle exceptions.

Signed-off-by: Benny Halevy <bhalevy@scylladb.com>
This commit is contained in:
Benny Halevy
2022-02-02 14:47:25 +02:00
parent 71a9524175
commit b56b10a4bb

View File

@@ -1844,6 +1844,8 @@ future<> view_builder::do_build_step() {
_current_step = _base_to_build_step.begin();
}
}
}).handle_exception([] (std::exception_ptr ex) {
vlogger.warn("Unexcepted error executing build step: {}. Ignored.", std::current_exception());
});
}