diff options
author | Jason Chan <jason.chan@10gen.com> | 2020-03-24 12:18:00 -0400 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-03-24 23:13:42 +0000 |
commit | 4601bd54dfd3f3ab20b357b71a4b17667143c0fb (patch) | |
tree | 0cda19d8440a15b76394f8780cdc45b3b3818a71 /jstests | |
parent | 5e3e6c4fd4516cbdbc127f392dc96ec7a791e8c5 (diff) | |
download | mongo-4601bd54dfd3f3ab20b357b71a4b17667143c0fb.tar.gz |
SERVER-47057 Use assert.soon when verifying sync source host name in change_sync_source_in_initial_sync.js
Diffstat (limited to 'jstests')
-rw-r--r-- | jstests/replsets/change_sync_source_in_initial_sync.js | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/jstests/replsets/change_sync_source_in_initial_sync.js b/jstests/replsets/change_sync_source_in_initial_sync.js index 868f85a42d2..0d592e42455 100644 --- a/jstests/replsets/change_sync_source_in_initial_sync.js +++ b/jstests/replsets/change_sync_source_in_initial_sync.js @@ -39,9 +39,12 @@ const initialSyncNode = rst.add({ rst.reInitiate(); rst.waitForState(initialSyncNode, ReplSetTest.State.STARTUP_2); -let res = assert.commandWorked(initialSyncNode.adminCommand({"replSetGetStatus": 1})); -assert.eq(primary.name, res.syncSourceHost, res); -assert.eq(0, res.initialSyncStatus.failedInitialSyncAttempts); +// Wait for the initial syncing node to choose a sync source. +assert.soon(function() { + const res = assert.commandWorked(initialSyncNode.adminCommand({"replSetGetStatus": 1})); + return primary.name === res.syncSourceHost && + res.initialSyncStatus.failedInitialSyncAttempts === 0; +}); assert.commandWorked( initialSyncNode.adminCommand({configureFailPoint: "forceSyncSourceCandidate", mode: "off"})); @@ -55,7 +58,7 @@ let hangBeforeFinishInitialSync = assert.commandWorked(initialSyncNode.adminCommand( {configureFailPoint: 'initialSyncHangBeforeCopyingDatabases', mode: 'off'})); hangBeforeFinishInitialSync.wait(); -res = assert.commandWorked(initialSyncNode.adminCommand({"replSetGetStatus": 1})); +let res = assert.commandWorked(initialSyncNode.adminCommand({"replSetGetStatus": 1})); assert.eq(secondary.name, res.syncSourceHost, res); assert.eq(1, res.initialSyncStatus.failedInitialSyncAttempts); assert.eq(2, res.initialSyncStatus.initialSyncAttempts.length); |