From f9bed91448c7a6f1bd1681365f09fd0767efb21f Mon Sep 17 00:00:00 2001 From: George Wangensteen Date: Wed, 23 Jun 2021 20:09:59 +0000 Subject: SERVER-57893 Make rsm_horizon_change.js resilient to network failures (cherry picked from commits 82ad45c958c2fc020c808254dbd19072a225113d and d378bdd1e6b8e170aabb8f4f089b74481ed0bf1a) --- jstests/noPassthrough/rsm_horizon_change.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jstests/noPassthrough/rsm_horizon_change.js b/jstests/noPassthrough/rsm_horizon_change.js index 5ff364277f2..8944e41f705 100644 --- a/jstests/noPassthrough/rsm_horizon_change.js +++ b/jstests/noPassthrough/rsm_horizon_change.js @@ -13,6 +13,11 @@ const unknownTopologyChangeRegex = new RegExp( `Topology Change.*${st.configRS.name}.*topologyType:.*ReplicaSetNoPrimary.*type:.*Unknown`); const knownTopologyChangeRegex = new RegExp( `Topology Change.*${st.configRS.name}.*topologyType:.*ReplicaSetWithPrimary.*type:.*RSPrimary`); +const expeditedMonitoringAfterNetworkErrorRegex = + new RegExp(`RSM monitoring host in expedited mode until we detect a primary`); +const unknownServerDescriptionRegex = + new RegExp("(" + unknownTopologyChangeRegex.source + ")|(" + + expeditedMonitoringAfterNetworkErrorRegex.source + ")"); jsTest.log("Wait until the RSM on the mongos finds out about the config server primary"); checkLog.contains(st.s, knownTopologyChangeRegex); @@ -27,7 +32,7 @@ rsConfig.version++; assert.commandWorked(st.s.adminCommand({clearLog: 'global'})); assert.commandWorked(configRSPrimary.adminCommand({replSetReconfig: rsConfig})); -checkLog.contains(st.s, unknownTopologyChangeRegex); +checkLog.contains(st.s, unknownServerDescriptionRegex); jsTest.log("Verify that the RSM eventually has the right topology description again"); checkLog.contains(st.s, knownTopologyChangeRegex); -- cgit v1.2.1