diff options
Diffstat (limited to 'jstests/replsets/resync_majority_member.js')
-rw-r--r-- | jstests/replsets/resync_majority_member.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/jstests/replsets/resync_majority_member.js b/jstests/replsets/resync_majority_member.js index e2b4a50bb63..221e4e2b2fc 100644 --- a/jstests/replsets/resync_majority_member.js +++ b/jstests/replsets/resync_majority_member.js @@ -11,8 +11,9 @@ (function() { "use strict"; -load("jstests/libs/write_concern_util.js"); load("jstests/libs/fail_point_util.js"); +load("jstests/libs/storage_engine_utils.js"); +load("jstests/libs/write_concern_util.js"); TestData.skipCheckDBHashes = true; // the set is not consistent when we shutdown the test @@ -90,8 +91,14 @@ assert.commandWorked(syncSource.getDB(dbName).getCollection(collName).insert( // This failpoint will only be hit if the node's rollback common point is before the replication // commit point, which triggers an invariant. This failpoint is used to verify the invariant // will be hit without having to search the logs. -const rollbackCommittedWritesFailPoint = - configureFailPoint(rollbackNode, "rollbackHangCommonPointBeforeReplCommitPoint"); +let rollbackCommittedWritesFailPoint; +if (storageEngineIsWiredTigerOrInMemory() && jsTest.options().enableMajorityReadConcern !== false) { + rollbackCommittedWritesFailPoint = + configureFailPoint(rollbackNode, "rollbackToTimestampHangCommonPointBeforeReplCommitPoint"); +} else { + rollbackCommittedWritesFailPoint = + configureFailPoint(rollbackNode, "rollbackViaRefetchHangCommonPointBeforeReplCommitPoint"); +} // Node 1 will have to roll back to rejoin the set. It will crash as it will refuse to roll back // majority committed data. |