diff options
Diffstat (limited to 'jstests/sharding/move_primary_with_writes.js')
-rw-r--r-- | jstests/sharding/move_primary_with_writes.js | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/jstests/sharding/move_primary_with_writes.js b/jstests/sharding/move_primary_with_writes.js index 9de2338a31a..9b28a7838bb 100644 --- a/jstests/sharding/move_primary_with_writes.js +++ b/jstests/sharding/move_primary_with_writes.js @@ -5,6 +5,7 @@ 'use strict'; load('jstests/libs/fail_point_util.js'); +load("jstests/libs/feature_flag_util.js"); let st = new ShardingTest({ mongos: 2, @@ -285,11 +286,20 @@ st.forEachConnection(shard => { } }); +let cloningCatalogDataFPName = "hangBeforeCloningCatalogData"; +let cleaningStaleDataFPName = "hangBeforeCleaningStaleData"; + +// TODO (SERVER-71309): Remove once 7.0 becomes last LTS. +if (!FeatureFlagUtil.isEnabled(st.configRS.getPrimary().getDB('admin'), "ResilientMovePrimary")) { + cloningCatalogDataFPName = "hangInCloneStage"; + cleaningStaleDataFPName = "hangInCleanStaleDataStage"; +} + createCollections(); let fromShard = st.getPrimaryShard(dbName); let toShard = st.getOther(fromShard); -testMovePrimary('hangInCloneStage', fromShard, toShard, st.s.getDB(dbName), true, false); +testMovePrimary(cloningCatalogDataFPName, fromShard, toShard, st.s.getDB(dbName), true, false); verifyDocuments(toShard.getDB(dbName), 3); verifyDocuments(fromShard.getDB(dbName), 0); @@ -297,19 +307,19 @@ createCollections(); fromShard = st.getPrimaryShard(dbName); toShard = st.getOther(fromShard); -testMovePrimary('hangInCloneStage', fromShard, toShard, st.s.getDB(dbName), false, true); +testMovePrimary(cloningCatalogDataFPName, fromShard, toShard, st.s.getDB(dbName), false, true); verifyDocuments(toShard.getDB(dbName), 3); verifyDocuments(fromShard.getDB(dbName), 0); createCollections(); fromShard = st.getPrimaryShard(dbName); toShard = st.getOther(fromShard); -testMovePrimaryDDL('hangInCloneStage', fromShard, toShard, st.s.getDB("admin"), false, true); +testMovePrimaryDDL(cloningCatalogDataFPName, fromShard, toShard, st.s.getDB("admin"), false, true); createCollections(); fromShard = st.getPrimaryShard(dbName); toShard = st.getOther(fromShard); -testMovePrimary('hangInCleanStaleDataStage', fromShard, toShard, st.s.getDB(dbName), false, false); +testMovePrimary(cleaningStaleDataFPName, fromShard, toShard, st.s.getDB(dbName), false, false); overrideDDLLockTimeoutFPs.forEach(fp => fp.off()); |