summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mongo/db/read_concern_mongod.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mongo/db/read_concern_mongod.cpp b/src/mongo/db/read_concern_mongod.cpp
index a3eeef9a53b..7844f28ebea 100644
--- a/src/mongo/db/read_concern_mongod.cpp
+++ b/src/mongo/db/read_concern_mongod.cpp
@@ -137,6 +137,12 @@ Status makeNoopWriteIfNeeded(OperationContext* opCtx, LogicalTime clusterTime) {
}
bool isConfig = (serverGlobalParams.clusterRole == ClusterRole::ConfigServer);
+
+ if (!isConfig && !ShardingState::get(opCtx)->enabled()) {
+ return {ErrorCodes::ShardingStateNotInitialized,
+ "Failed noop write because sharding state has not been initialized"};
+ }
+
auto myShard = isConfig ? Grid::get(opCtx)->shardRegistry()->getConfigShard()
: Grid::get(opCtx)->shardRegistry()->getShard(
opCtx, ShardingState::get(opCtx)->shardId());