diff options
author | Marcos José Grillo Ramirez <marcos.grillo@mongodb.com> | 2023-02-07 10:09:31 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2023-02-07 13:05:50 +0000 |
commit | 5d7876b19184677959be260754691d5bfeefc7c7 (patch) | |
tree | 593570944f38a99290f4811bc6f54822fa5cf83e /src/mongo | |
parent | f314903119bfe09ee0e54c7c00f7f814c370efb5 (diff) | |
download | mongo-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.cpp | 7 |
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()); } |