summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/replication_coordinator_external_state_impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/replication_coordinator_external_state_impl.cpp')
-rw-r--r--src/mongo/db/repl/replication_coordinator_external_state_impl.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_external_state_impl.cpp b/src/mongo/db/repl/replication_coordinator_external_state_impl.cpp
index 674ec4d5940..2e99b48c2e8 100644
--- a/src/mongo/db/repl/replication_coordinator_external_state_impl.cpp
+++ b/src/mongo/db/repl/replication_coordinator_external_state_impl.cpp
@@ -657,16 +657,14 @@ void ReplicationCoordinatorExternalStateImpl::shardingOnStepDownHook() {
ShardingState::get(_service)->markCollectionsNotShardedAtStepdown();
- if (serverGlobalParams.clusterRole == ClusterRole::ConfigServer) {
- if (auto validator = LogicalTimeValidator::get(_service)) {
- auto opCtx = cc().getOperationContext();
+ if (auto validator = LogicalTimeValidator::get(_service)) {
+ auto opCtx = cc().getOperationContext();
- if (opCtx != nullptr) {
- validator->enableKeyGenerator(opCtx, false);
- } else {
- auto opCtxPtr = cc().makeOperationContext();
- validator->enableKeyGenerator(opCtxPtr.get(), false);
- }
+ if (opCtx != nullptr) {
+ validator->enableKeyGenerator(opCtx, false);
+ } else {
+ auto opCtxPtr = cc().makeOperationContext();
+ validator->enableKeyGenerator(opCtxPtr.get(), false);
}
}
}
@@ -743,6 +741,10 @@ void ReplicationCoordinatorExternalStateImpl::_shardingOnTransitionToPrimaryHook
CatalogCacheLoader::get(_service).onStepUp();
PeriodicBalancerSettingsRefresher::get(_service)->start();
ShardingState::get(_service)->initiateChunkSplitter();
+ } else { // unsharded
+ if (auto validator = LogicalTimeValidator::get(_service)) {
+ validator->enableKeyGenerator(opCtx, true);
+ }
}
SessionCatalog::get(_service)->onStepUp(opCtx);