diff options
author | Antonio Fuschetto <antonio.fuschetto@mongodb.com> | 2022-10-07 10:11:51 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-10-07 13:32:59 +0000 |
commit | 8c8f7d1271c74da58b90f340436efdd8d4b603f3 (patch) | |
tree | 068f383141345f3393d007f2a651d174d47259a3 | |
parent | 474aba9882fe7d78e591efd1ba4f3c1691d7a8e5 (diff) | |
download | mongo-8c8f7d1271c74da58b90f340436efdd8d4b603f3.tar.gz |
SERVER-69898 Wait for the critical section catch-up phase before refreshing the DB version
-rw-r--r-- | src/mongo/db/s/flush_database_cache_updates_command.cpp | 4 | ||||
-rw-r--r-- | src/mongo/db/s/shard_filtering_metadata_refresh.cpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/s/flush_database_cache_updates_command.cpp b/src/mongo/db/s/flush_database_cache_updates_command.cpp index ff4837fdf16..11c2adb4684 100644 --- a/src/mongo/db/s/flush_database_cache_updates_command.cpp +++ b/src/mongo/db/s/flush_database_cache_updates_command.cpp @@ -175,8 +175,8 @@ public: // consistency guarantee. const auto dss = DatabaseShardingState::get(opCtx, _dbName()); auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, dss); - criticalSectionSignal = - dss->getCriticalSectionSignal(ShardingMigrationCriticalSection::kRead, dssLock); + criticalSectionSignal = dss->getCriticalSectionSignal( + ShardingMigrationCriticalSection::kWrite, dssLock); } if (criticalSectionSignal) diff --git a/src/mongo/db/s/shard_filtering_metadata_refresh.cpp b/src/mongo/db/s/shard_filtering_metadata_refresh.cpp index bbdcff999f1..67aac77d941 100644 --- a/src/mongo/db/s/shard_filtering_metadata_refresh.cpp +++ b/src/mongo/db/s/shard_filtering_metadata_refresh.cpp @@ -72,7 +72,7 @@ bool joinDbVersionOperation(OperationContext* opCtx, invariant(dssLock->has_value()); if (auto critSect = - dss->getCriticalSectionSignal(ShardingMigrationCriticalSection::kRead, **dssLock)) { + dss->getCriticalSectionSignal(ShardingMigrationCriticalSection::kWrite, **dssLock)) { LOGV2_DEBUG(6697201, 2, "Waiting for exit from the critical section", |