summaryrefslogtreecommitdiff
path: root/src/mongo/util/stacktrace_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/util/stacktrace_test.cpp')
-rw-r--r--src/mongo/util/stacktrace_test.cpp58
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)