summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTommaso Tocci <tommaso.tocci@mongodb.com>2022-06-22 15:00:53 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-06-22 16:44:08 +0000
commit9bc011dc606b2eaa6b3dc770e7cdc8c8969c75a5 (patch)
tree80b61517545f363c4203d415bb331818db28f19b
parentaf7d7199295acdd5001ff25e197fe74d93cfef66 (diff)
downloadmongo-9bc011dc606b2eaa6b3dc770e7cdc8c8969c75a5.tar.gz
SERVER-67399 collMod coordinator must block migrations on bucket nss
-rw-r--r--src/mongo/db/s/collmod_coordinator.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mongo/db/s/collmod_coordinator.cpp b/src/mongo/db/s/collmod_coordinator.cpp
index ecd23800b69..3ec0db50ec5 100644
--- a/src/mongo/db/s/collmod_coordinator.cpp
+++ b/src/mongo/db/s/collmod_coordinator.cpp
@@ -208,9 +208,10 @@ ExecutorFuture<void> CollModCoordinator::_runImpl(
_saveCollectionInfoOnCoordinatorIfNecessary(opCtx);
if (_collInfo->isSharded) {
- _doc.setCollUUID(
- sharding_ddl_util::getCollectionUUID(opCtx, nss(), true /* allowViews */));
- sharding_ddl_util::stopMigrations(opCtx, nss(), _doc.getCollUUID());
+ _doc.setCollUUID(sharding_ddl_util::getCollectionUUID(
+ opCtx, _collInfo->nsForTargeting, true /* allowViews */));
+ sharding_ddl_util::stopMigrations(
+ opCtx, _collInfo->nsForTargeting, _doc.getCollUUID());
}
_saveShardingInfoOnCoordinatorIfNecessary(opCtx);
@@ -309,7 +310,8 @@ ExecutorFuture<void> CollModCoordinator::_runImpl(
CommandHelpers::appendSimpleCommandStatus(builder, ok, errmsg);
}
_result = builder.obj();
- sharding_ddl_util::resumeMigrations(opCtx, nss(), _doc.getCollUUID());
+ sharding_ddl_util::resumeMigrations(
+ opCtx, _collInfo->nsForTargeting, _doc.getCollUUID());
} else {
CollMod cmd(nss());
cmd.setCollModRequest(_request);
@@ -344,7 +346,8 @@ ExecutorFuture<void> CollModCoordinator::_runImpl(
auto* opCtx = opCtxHolder.get();
getForwardableOpMetadata().setOn(opCtx);
- sharding_ddl_util::resumeMigrations(opCtx, nss(), _doc.getCollUUID());
+ sharding_ddl_util::resumeMigrations(
+ opCtx, _collInfo->nsForTargeting, _doc.getCollUUID());
}
}
return status;