diff options
author | Sergi Mateo Bellido <sergi.mateo-bellido@mongodb.com> | 2022-05-12 17:03:11 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-05-12 18:06:03 +0000 |
commit | cc33146088335da2bc08edf4eeec7d6b9fd724f0 (patch) | |
tree | 77425ab50f3d44bad56b8238d564a1615b5c2408 /src/mongo/db/namespace_string.cpp | |
parent | 181a405baf42fc204e924dcde8f246d6f40a09bb (diff) | |
download | mongo-cc33146088335da2bc08edf4eeec7d6b9fd724f0.tar.gz |
SERVER-64433 Recovering the topology tick points on startup/init sync
Diffstat (limited to 'src/mongo/db/namespace_string.cpp')
-rw-r--r-- | src/mongo/db/namespace_string.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mongo/db/namespace_string.cpp b/src/mongo/db/namespace_string.cpp index cc02a9027a3..26f9249996e 100644 --- a/src/mongo/db/namespace_string.cpp +++ b/src/mongo/db/namespace_string.cpp @@ -166,6 +166,10 @@ const NamespaceString NamespaceString::kCompactStructuredEncryptionCoordinatorNa const NamespaceString NamespaceString::kClusterParametersNamespace(NamespaceString::kConfigDb, "clusterParameters"); +// TODO (SERVER-66431): replace all usages of ShardType::ConfigNS by kConfigsvrShardsNamespace +const NamespaceString NamespaceString::kConfigsvrShardsNamespace(NamespaceString::kConfigDb, + "shards"); + NamespaceString NamespaceString::parseFromStringExpectTenantIdInMultitenancyMode(StringData ns) { if (!gMultitenancySupport) { return NamespaceString(ns, boost::none); @@ -252,12 +256,16 @@ bool NamespaceString::isLegalClientSystemNS( * * Process updates to config.tenantMigrationRecipients individually so they serialize after inserts * into config.donatedFiles.<migrationId>. + * + * Oplog entries on 'config.shards' should be processed one at a time, otherwise the in-memory state + * that its kept on the TopologyTimeTicker might be wrong. + * */ bool NamespaceString::mustBeAppliedInOwnOplogBatch() const { return isSystemDotViews() || isServerConfigurationCollection() || isPrivilegeCollection() || _ns == kDonorReshardingOperationsNamespace.ns() || _ns == kForceOplogBatchBoundaryNamespace.ns() || - _ns == kTenantMigrationRecipientsNamespace.ns(); + _ns == kTenantMigrationRecipientsNamespace.ns() || _ns == kConfigsvrShardsNamespace.ns(); } NamespaceString NamespaceString::makeListCollectionsNSS(const DatabaseName& dbName) { |