|
14 | 14 | * config.version is read to confirm the availability of metadata |
15 | 15 | * reads. |
16 | 16 | */ |
| 17 | + |
| 18 | +load("jstests/replsets/rslib.js"); |
| 19 | + |
17 | 20 | var st; |
18 | 21 | (function() { |
19 | 22 | "use strict"; |
@@ -96,33 +99,6 @@ var st; |
96 | 99 | } |
97 | 100 | }); |
98 | 101 |
|
99 | | - var waitUntilAllCaughtUp = function(csrs) { |
100 | | - var rsStatus; |
101 | | - var firstConflictingIndex; |
102 | | - var ot; |
103 | | - var otherOt; |
104 | | - assert.soon(function () { |
105 | | - rsStatus = csrs[0].adminCommand('replSetGetStatus'); |
106 | | - if (rsStatus.ok != 1) { |
107 | | - return false; |
108 | | - } |
109 | | - assert.eq(csrs.length, rsStatus.members.length, tojson(rsStatus)); |
110 | | - ot = rsStatus.members[0].optime; |
111 | | - for (var i = 1; i < rsStatus.members.length; ++i) { |
112 | | - otherOt = rsStatus.members[i].optime; |
113 | | - if (bsonWoCompare({ts: otherOt.ts}, {ts: ot.ts}) || |
114 | | - bsonWoCompare({t: otherOt.t}, {t: ot.t})) { |
115 | | - firstConflictingIndex = i; |
116 | | - return false; |
117 | | - } |
118 | | - } |
119 | | - return true; |
120 | | - }, function () { |
121 | | - return "Optimes of members 0 (" + tojson(ot) + ") and " + firstConflictingIndex + " (" + |
122 | | - tojson(otherOt) + ") are different in " + tojson(rsStatus); |
123 | | - }); |
124 | | - }; |
125 | | - |
126 | 102 | var shardConfigs = st.s0.getCollection("config.shards").find().toArray(); |
127 | 103 | assert.eq(2, shardConfigs.length); |
128 | 104 | var shard0Name = shardConfigs[0]._id; |
@@ -192,7 +168,7 @@ var st; |
192 | 168 | assertOpsWork(st.s0, "using SCCC protocol when first config server is primary of " + |
193 | 169 | csrs.length + "-node replica set"); |
194 | 170 |
|
195 | | - waitUntilAllCaughtUp(csrs); |
| 171 | + waitUntilAllNodesCaughtUp(csrs); |
196 | 172 |
|
197 | 173 | jsTest.log("Shutting down second and third SCCC config server nodes"); |
198 | 174 | MongoRunner.stopMongod(st.c1); |
|
0 commit comments