diff --git a/test/boost/tracing.cc b/test/boost/tracing.cc index 5f8d303367..9d3371a615 100644 --- a/test/boost/tracing.cc +++ b/test/boost/tracing.cc @@ -37,12 +37,14 @@ future<> do_with_tracing_env(std::function(cql_test_env&)> func, cql_te // supervisor::notify("starting tracing"); tracing::tracing::start_tracing(env.qp()).get(); - return func(env).finally([](){ - tracing::tracing::tracing_instance().invoke_on_all([] (tracing::tracing& local_tracing) { - return local_tracing.shutdown(); - }).get(); - - return tracing::tracing::tracing_instance().stop(); + return do_with(std::move(tracing_backend_registry), [func, &env](auto ®) { + return func(env).finally([]() { + return tracing::tracing::tracing_instance().invoke_on_all([](tracing::tracing &local_tracing) { + return local_tracing.shutdown(); + }).finally([]() { + return tracing::tracing::tracing_instance().stop(); + }); + }); }); }, std::move(cfg_in)); } diff --git a/tracing/tracing_backend_registry.cc b/tracing/tracing_backend_registry.cc index fcb9d42531..9928632db3 100644 --- a/tracing/tracing_backend_registry.cc +++ b/tracing/tracing_backend_registry.cc @@ -32,9 +32,6 @@ backend_registry::backend_registry() : _impl(std::make_unique>()) { } -backend_registry::~backend_registry() = default; - - void backend_registry::register_backend_creator(sstring name, std::function (tracing&)> creator) { _impl->register_class(std::move(name), std::move(creator)); diff --git a/tracing/tracing_backend_registry.hh b/tracing/tracing_backend_registry.hh index 92b055c739..7f4093acb9 100644 --- a/tracing/tracing_backend_registry.hh +++ b/tracing/tracing_backend_registry.hh @@ -47,7 +47,6 @@ private: void register_backend_creator(sstring name, std::function (tracing&)> creator); public: backend_registry(); - ~backend_registry(); std::unique_ptr create_backend(const sstring& name, tracing& t) const; // may throw no_such_tracing_backend template void register_backend(sstring name);