summaryrefslogtreecommitdiff
path: root/src/mongo
diff options
context:
space:
mode:
authorMarcos José Grillo Ramirez <marcos.grillo@mongodb.com>2023-02-07 10:09:31 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2023-02-07 13:05:50 +0000
commit5d7876b19184677959be260754691d5bfeefc7c7 (patch)
tree593570944f38a99290f4811bc6f54822fa5cf83e /src/mongo
parentf314903119bfe09ee0e54c7c00f7f814c370efb5 (diff)
downloadmongo-5d7876b19184677959be260754691d5bfeefc7c7.tar.gz
SERVER-73542 Drop index metadata in resharding donors that are not recipients
Diffstat (limited to 'src/mongo')
-rw-r--r--src/mongo/db/s/resharding/resharding_donor_service.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mongo/db/s/resharding/resharding_donor_service.cpp b/src/mongo/db/s/resharding/resharding_donor_service.cpp
index f01a5daae26..e59af78881c 100644
--- a/src/mongo/db/s/resharding/resharding_donor_service.cpp
+++ b/src/mongo/db/s/resharding/resharding_donor_service.cpp
@@ -46,6 +46,7 @@
#include "mongo/db/persistent_task_store.h"
#include "mongo/db/repl/repl_client_info.h"
#include "mongo/db/repl/wait_for_majority_service.h"
+#include "mongo/db/s/global_index_ddl_util.h"
#include "mongo/db/s/resharding/resharding_change_event_o2_field_gen.h"
#include "mongo/db/s/resharding/resharding_data_copy_util.h"
#include "mongo/db/s/resharding/resharding_donor_recipient_common.h"
@@ -60,6 +61,7 @@
#include "mongo/logv2/log.h"
#include "mongo/s/catalog/sharding_catalog_client.h"
#include "mongo/s/grid.h"
+#include "mongo/s/sharding_feature_flags_gen.h"
#include "mongo/util/future_util.h"
#define MONGO_LOGV2_DEFAULT_COMPONENT ::mongo::logv2::LogComponent::kResharding
@@ -824,6 +826,11 @@ void ReshardingDonorService::DonorStateMachine::_dropOriginalCollectionThenTrans
// Allow bypassing user write blocking. The check has already been performed on the
// db-primary shard's ReshardCollectionCoordinator.
WriteBlockBypass::get(opCtx.get()).set(true);
+
+ if (feature_flags::gGlobalIndexesShardingCatalog.isEnabled(
+ serverGlobalParams.featureCompatibility)) {
+ dropCollectionGlobalIndexesMetadata(opCtx.get(), _metadata.getSourceNss());
+ }
mongo::sharding_ddl_util::ensureCollectionDroppedNoChangeEvent(
opCtx.get(), _metadata.getSourceNss(), _metadata.getSourceUUID());
}