diff options
author | Jason Chan <jason.chan@mongodb.com> | 2023-05-12 14:38:09 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2023-05-12 15:36:21 +0000 |
commit | 36746fccd8c2648cec47526f24a181e9d4546147 (patch) | |
tree | 4fd6ffcc448365d8a785bfe2154253748fedc7e1 /jstests | |
parent | 5e31330b37acd7ae599ada97a5161b1e3681c30e (diff) | |
download | mongo-36746fccd8c2648cec47526f24a181e9d4546147.tar.gz |
SERVER-74221 Add assert.soon in mirror_reads.js
Diffstat (limited to 'jstests')
-rw-r--r-- | jstests/noPassthrough/mirror_reads.js | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/jstests/noPassthrough/mirror_reads.js b/jstests/noPassthrough/mirror_reads.js index 4a27724aeef..9122e6678b4 100644 --- a/jstests/noPassthrough/mirror_reads.js +++ b/jstests/noPassthrough/mirror_reads.js @@ -77,18 +77,19 @@ function sendAndCheckReads({rst, cmd, minRate, maxRate, burstCount}) { return ((readsPending == 0) && (readsSent === readsResolved)); }, "Did not resolve all requests within time limit", 10000); - // The number of mirrored reads processed across all secondaries. - let readsProcessedAsSecondaryTotal = 0; - for (let i = 0; i < secondaries.length; i++) { - const currentSecondaryMirroredReadsStats = getMirroredReadsStats(secondaries[i]); - const processedAsSecondary = currentSecondaryMirroredReadsStats.processedAsSecondary - - initialProcessedAsSecondary[i]; - jsTestLog("Verifying number of reads processed by secondary " + secondaries[i] + ": " + - tojson({processedAsSecondary: processedAsSecondary})); - readsProcessedAsSecondaryTotal += processedAsSecondary; - } - assert.eq(readsProcessedAsSecondaryTotal, readsSucceeded); - assert.eq(readsProcessedAsSecondaryTotal, readsSent); + assert.soon(() => { + // The number of mirrored reads processed across all secondaries. + let readsProcessedAsSecondaryTotal = 0; + for (let i = 0; i < secondaries.length; i++) { + const currentSecondaryMirroredReadsStats = getMirroredReadsStats(secondaries[i]); + const processedAsSecondary = currentSecondaryMirroredReadsStats.processedAsSecondary - + initialProcessedAsSecondary[i]; + jsTestLog("Verifying number of reads processed by secondary " + secondaries[i] + ": " + + tojson({processedAsSecondary: processedAsSecondary})); + readsProcessedAsSecondaryTotal += processedAsSecondary; + } + return readsProcessedAsSecondaryTotal == readsSucceeded && readsSucceeded == readsSent; + }, "Read metrics across secondaries did not converge to expected results", 10000); jsTestLog("Verifying primary statistics: " + tojson({current: currentPrimaryMirroredReadsStats, start: initialPrimaryStats})); |