diff options
author | Lamont Nelson <lamont.nelson@mongodb.com> | 2020-03-11 17:56:12 -0400 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-03-23 21:34:46 +0000 |
commit | 7285b580e94252d7c66782a086458dd2f6d095c6 (patch) | |
tree | fa01b0cf377769e855a1c926e99b3dbdd7dacdf1 | |
parent | 55549b3383e36b6b5646354c3e0a7519add48e5d (diff) | |
download | mongo-7285b580e94252d7c66782a086458dd2f6d095c6.tar.gz |
SERVER-45009: Run onStepdown on the TransactionCoordinatorService to prevent tests from hanging at shutdown
-rw-r--r-- | src/mongo/db/db.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mongo/db/db.cpp b/src/mongo/db/db.cpp index ac10b378700..d81dbe5be51 100644 --- a/src/mongo/db/db.cpp +++ b/src/mongo/db/db.cpp @@ -131,6 +131,7 @@ #include "mongo/db/s/shard_server_op_observer.h" #include "mongo/db/s/sharding_initialization_mongod.h" #include "mongo/db/s/sharding_state_recovery.h" +#include "mongo/db/s/transaction_coordinator_service.h" #include "mongo/db/s/wait_for_majority_service.h" #include "mongo/db/server_options.h" #include "mongo/db/service_context.h" @@ -1049,6 +1050,10 @@ void shutdownTask(const ShutdownTaskArgs& shutdownArgs) { "Failed to stepDown in non-command initiated shutdown path {e}", "e"_attr = e.toString()); } + + // Even if the replCoordinator failed to step down, ensure we still shut down the + // TransactionCoordinatorService (see SERVER-45009) + TransactionCoordinatorService::get(serviceContext)->onStepDown(); } } |