summaryrefslogtreecommitdiff
path: root/src/mongo/db
diff options
context:
space:
mode:
authorRandolph Tan <randolph@mongodb.com>2019-09-13 15:41:38 +0000
committerevergreen <evergreen@mongodb.com>2019-09-13 15:41:38 +0000
commit121aa792f301b5edbfbda44048f5bcbd6de830b3 (patch)
treebabec887658c628672cf449cc7a5cda75484e4e6 /src/mongo/db
parent8e851fa90cff1eea6781ca3ef29950b05ec1ce6f (diff)
downloadmongo-121aa792f301b5edbfbda44048f5bcbd6de830b3.tar.gz
SERVER-40258 Rename CSRLock::lock to CSRLock::lockShared
(cherry picked from commit d6834482ef9bbca8fd81e82483dedde965de9574)
Diffstat (limited to 'src/mongo/db')
-rw-r--r--src/mongo/db/catalog/rename_collection.cpp4
-rw-r--r--src/mongo/db/catalog_raii.cpp4
-rw-r--r--src/mongo/db/commands/create_indexes.cpp2
-rw-r--r--src/mongo/db/index_builds_coordinator.cpp2
-rw-r--r--src/mongo/db/s/active_migrations_registry.cpp2
-rw-r--r--src/mongo/db/s/collection_sharding_state.cpp2
-rw-r--r--src/mongo/db/s/flush_database_cache_updates_command.cpp2
-rw-r--r--src/mongo/db/s/get_database_version_command.cpp2
-rw-r--r--src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp2
-rw-r--r--src/mongo/db/s/op_observer_sharding_impl.cpp8
-rw-r--r--src/mongo/db/s/shard_filtering_metadata_refresh.cpp2
-rw-r--r--src/mongo/db/s/sharding_state_lock.h7
12 files changed, 20 insertions, 19 deletions
diff --git a/src/mongo/db/catalog/rename_collection.cpp b/src/mongo/db/catalog/rename_collection.cpp
index a0874e11b77..6056fd235c3 100644
--- a/src/mongo/db/catalog/rename_collection.cpp
+++ b/src/mongo/db/catalog/rename_collection.cpp
@@ -155,7 +155,7 @@ Status checkSourceAndTargetNamespaces(OperationContext* opCtx,
{
auto& dss = DatabaseShardingState::get(db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
@@ -474,7 +474,7 @@ Status renameBetweenDBs(OperationContext* opCtx,
{
auto& dss = DatabaseShardingState::get(sourceDB);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
diff --git a/src/mongo/db/catalog_raii.cpp b/src/mongo/db/catalog_raii.cpp
index 40b6a883ef7..fee42dfd059 100644
--- a/src/mongo/db/catalog_raii.cpp
+++ b/src/mongo/db/catalog_raii.cpp
@@ -51,7 +51,7 @@ AutoGetDb::AutoGetDb(OperationContext* opCtx, StringData dbName, LockMode mode,
}()) {
if (_db) {
auto& dss = DatabaseShardingState::get(_db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
}
@@ -183,7 +183,7 @@ AutoGetOrCreateDb::AutoGetOrCreateDb(OperationContext* opCtx,
}
auto& dss = DatabaseShardingState::get(_db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
diff --git a/src/mongo/db/commands/create_indexes.cpp b/src/mongo/db/commands/create_indexes.cpp
index d14f5505a1d..c8e043f6b40 100644
--- a/src/mongo/db/commands/create_indexes.cpp
+++ b/src/mongo/db/commands/create_indexes.cpp
@@ -353,7 +353,7 @@ Database* getOrCreateDatabase(OperationContext* opCtx, StringData dbName, Lock::
*/
void checkDatabaseShardingState(OperationContext* opCtx, Database* db) {
auto& dss = DatabaseShardingState::get(db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
diff --git a/src/mongo/db/index_builds_coordinator.cpp b/src/mongo/db/index_builds_coordinator.cpp
index fdaa4fa3d3e..f0d139bb1bb 100644
--- a/src/mongo/db/index_builds_coordinator.cpp
+++ b/src/mongo/db/index_builds_coordinator.cpp
@@ -906,7 +906,7 @@ void IndexBuildsCoordinator::_buildIndex(OperationContext* opCtx,
auto db = DatabaseHolder::get(opCtx)->getDb(opCtx, nss.db());
if (db) {
auto& dss = DatabaseShardingState::get(db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
dss.checkDbVersion(opCtx, dssLock);
}
diff --git a/src/mongo/db/s/active_migrations_registry.cpp b/src/mongo/db/s/active_migrations_registry.cpp
index 503f3f24d1f..a3854cb9038 100644
--- a/src/mongo/db/s/active_migrations_registry.cpp
+++ b/src/mongo/db/s/active_migrations_registry.cpp
@@ -121,7 +121,7 @@ BSONObj ActiveMigrationsRegistry::getActiveMigrationStatusReport(OperationContex
// Lock the collection so nothing changes while we're getting the migration report.
AutoGetCollection autoColl(opCtx, nss.get(), MODE_IS);
auto csr = CollectionShardingRuntime::get(opCtx, nss.get());
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
if (auto msm = MigrationSourceManager::get(csr, csrLock)) {
return msm->getMigrationStatusReport();
diff --git a/src/mongo/db/s/collection_sharding_state.cpp b/src/mongo/db/s/collection_sharding_state.cpp
index 0d8871a0f45..e0dd987600d 100644
--- a/src/mongo/db/s/collection_sharding_state.cpp
+++ b/src/mongo/db/s/collection_sharding_state.cpp
@@ -218,7 +218,7 @@ void CollectionShardingState::checkShardVersionOrThrow(OperationContext* opCtx)
metadata->isSharded() ? metadata->getShardVersion() : ChunkVersion::UNSHARDED();
auto criticalSectionSignal = [&] {
- auto csrLock = CSRLock::lock(opCtx, this);
+ auto csrLock = CSRLock::lockShared(opCtx, this);
return _critSec.getSignal(opCtx->lockState()->isWriteLocked()
? ShardingMigrationCriticalSection::kWrite
: ShardingMigrationCriticalSection::kRead);
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 77728821151..c85be66a09d 100644
--- a/src/mongo/db/s/flush_database_cache_updates_command.cpp
+++ b/src/mongo/db/s/flush_database_cache_updates_command.cpp
@@ -128,7 +128,7 @@ public:
// propagated back to this shard. This ensures the read your own writes causal
// consistency guarantee.
auto& dss = DatabaseShardingState::get(autoDb.getDb());
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
if (auto criticalSectionSignal = dss.getCriticalSectionSignal(
ShardingMigrationCriticalSection::kRead, dssLock)) {
diff --git a/src/mongo/db/s/get_database_version_command.cpp b/src/mongo/db/s/get_database_version_command.cpp
index 71fc3e4b8ad..899c8c1e33f 100644
--- a/src/mongo/db/s/get_database_version_command.cpp
+++ b/src/mongo/db/s/get_database_version_command.cpp
@@ -80,7 +80,7 @@ public:
AutoGetDb autoDb(opCtx, _targetDb(), MODE_IS);
if (auto db = autoDb.getDb()) {
auto& dss = DatabaseShardingState::get(db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
if (auto dbVersion = dss.getDbVersion(opCtx, dssLock)) {
versionObj = dbVersion->toBSON();
diff --git a/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp b/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp
index 1e5fe3ec7e1..f7e325bfafc 100644
--- a/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp
+++ b/src/mongo/db/s/migration_chunk_cloner_source_legacy_commands.cpp
@@ -76,7 +76,7 @@ public:
{
auto csr = CollectionShardingRuntime::get(opCtx, *nss);
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
if (auto msm = MigrationSourceManager::get(csr, csrLock)) {
// It is now safe to access the cloner
diff --git a/src/mongo/db/s/op_observer_sharding_impl.cpp b/src/mongo/db/s/op_observer_sharding_impl.cpp
index 72a9f9e4c22..1ac9e743879 100644
--- a/src/mongo/db/s/op_observer_sharding_impl.cpp
+++ b/src/mongo/db/s/op_observer_sharding_impl.cpp
@@ -82,7 +82,7 @@ bool OpObserverShardingImpl::isMigrating(OperationContext* opCtx,
NamespaceString const& nss,
BSONObj const& docToDelete) {
auto csr = CollectionShardingRuntime::get(opCtx, nss);
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
return isMigratingWithCSRLock(csr, csrLock, docToDelete);
}
@@ -113,7 +113,7 @@ void OpObserverShardingImpl::shardObserveInsertOp(OperationContext* opCtx,
return;
}
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
auto msm = MigrationSourceManager::get(csr, csrLock);
if (msm) {
msm->getCloner()->onInsertOp(opCtx, insertedDoc, opTime);
@@ -135,7 +135,7 @@ void OpObserverShardingImpl::shardObserveUpdateOp(OperationContext* opCtx,
return;
}
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
auto msm = MigrationSourceManager::get(csr, csrLock);
if (msm) {
msm->getCloner()->onUpdateOp(opCtx, preImageDoc, postImageDoc, opTime, prePostImageOpTime);
@@ -156,7 +156,7 @@ void OpObserverShardingImpl::shardObserveDeleteOp(OperationContext* opCtx,
return;
}
- auto csrLock = CollectionShardingRuntime::CSRLock::lock(opCtx, csr);
+ auto csrLock = CollectionShardingRuntime::CSRLock::lockShared(opCtx, csr);
auto msm = MigrationSourceManager::get(csr, csrLock);
if (msm && getIsMigrating(opCtx)) {
diff --git a/src/mongo/db/s/shard_filtering_metadata_refresh.cpp b/src/mongo/db/s/shard_filtering_metadata_refresh.cpp
index e01e41929e8..bd55c8d6b9e 100644
--- a/src/mongo/db/s/shard_filtering_metadata_refresh.cpp
+++ b/src/mongo/db/s/shard_filtering_metadata_refresh.cpp
@@ -258,7 +258,7 @@ void forceDatabaseRefresh(OperationContext* opCtx, const StringData dbName) {
}
auto& dss = DatabaseShardingState::get(db);
- auto dssLock = DatabaseShardingState::DSSLock::lock(opCtx, &dss);
+ auto dssLock = DatabaseShardingState::DSSLock::lockShared(opCtx, &dss);
const auto cachedDbVersion = dss.getDbVersion(opCtx, dssLock);
if (cachedDbVersion && cachedDbVersion->getUuid() == refreshedDbVersion.getUuid() &&
diff --git a/src/mongo/db/s/sharding_state_lock.h b/src/mongo/db/s/sharding_state_lock.h
index 620cd5f53a0..98db5e58e79 100644
--- a/src/mongo/db/s/sharding_state_lock.h
+++ b/src/mongo/db/s/sharding_state_lock.h
@@ -47,7 +47,8 @@ public:
* Locks the sharding state object with the sharding state object's ResourceMutex in MODE_IS.
* When the object goes out of scope, the ResourceMutex will be unlocked.
*/
- static ShardingStateLock<ShardingState> lock(OperationContext* opCtx, ShardingState* state);
+ static ShardingStateLock<ShardingState> lockShared(OperationContext* opCtx,
+ ShardingState* state);
/**
* Follows the same functionality as the ShardingStateLock lock method, except that
@@ -81,8 +82,8 @@ ShardingStateLock<ShardingState>::ShardingStateLock(OperationContext* opCtx,
}()) {}
template <class ShardingState>
-ShardingStateLock<ShardingState> ShardingStateLock<ShardingState>::lock(OperationContext* opCtx,
- ShardingState* state) {
+ShardingStateLock<ShardingState> ShardingStateLock<ShardingState>::lockShared(
+ OperationContext* opCtx, ShardingState* state) {
return ShardingStateLock(opCtx, state, MODE_IS);
}