diff options
Diffstat (limited to 'src/mongo/util/stacktrace_test.cpp')
| -rw-r--r-- | src/mongo/util/stacktrace_test.cpp | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/src/mongo/util/stacktrace_test.cpp b/src/mongo/util/stacktrace_test.cpp index 6c6d2f36366..2a9ad180c28 100644 --- a/src/mongo/util/stacktrace_test.cpp +++ b/src/mongo/util/stacktrace_test.cpp @@ -645,64 +645,6 @@ TEST_F(PrintAllThreadStacksTest, Go_200_Threads) { doPrintAllThreadStacks(200); } -TEST_F(PrintAllThreadStacksTest, SessionBasic) { - stack_trace_detail::PrintAllStacksSession session; - - auto waiter = boost::make_optional(session.waiter()); - stdx::thread producer{[&] { auto notifier = session.notifier(); }}; - waiter = {}; - producer.join(); -} - -TEST_F(PrintAllThreadStacksTest, SessionProducerConsumers) { - synchronized_value<std::string> values; - stack_trace_detail::PrintAllStacksSession session; - - struct PromiseFuture { - SharedPromise<void> promise; - SharedSemiFuture<void> future; - }; - - std::vector<PromiseFuture> promisesFutures(2); - - for (auto& pf : promisesFutures) { - pf.future = pf.promise.getFuture(); - } - - std::vector<stdx::thread> consumers; - for (auto& pf : promisesFutures) { - consumers.emplace_back([&, p = &pf.promise] { - auto waiter = boost::make_optional(session.waiter()); - p->emplaceValue(); - waiter = {}; - values->push_back('3'); - }); - } - - // This does not enforce ordering between push_back('3') above and the push_back calls below if - // PrintAllStacksSession::waiter/notifier don't. - for (auto& pf : promisesFutures) { - pf.future.wait(); - } - - stdx::thread producer{[&] { - values->push_back('1'); - auto notifier = boost::make_optional(session.notifier()); - values->push_back('2'); - notifier = {}; - values->push_back('3'); - }}; - - for (auto& consumer : consumers) { - consumer.join(); - } - - producer.join(); - - auto guard = values.synchronize(); - ASSERT(*guard == "12333") << *guard; -} - #endif // defined(MONGO_STACKTRACE_CAN_DUMP_ALL_THREADS) #if defined(MONGO_CONFIG_USE_LIBUNWIND) || defined(MONGO_CONFIG_HAVE_EXECINFO_BACKTRACE) |
