summaryrefslogtreecommitdiff
path: root/jstests/slow1/conc_update.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/slow1/conc_update.js')
-rw-r--r--jstests/slow1/conc_update.js82
1 files changed, 41 insertions, 41 deletions
diff --git a/jstests/slow1/conc_update.js b/jstests/slow1/conc_update.js
index 57e4ba134cb..083b333b281 100644
--- a/jstests/slow1/conc_update.js
+++ b/jstests/slow1/conc_update.js
@@ -1,61 +1,61 @@
(function() {
- "use strict";
+"use strict";
- const conn = MongoRunner.runMongod({nojournal: ""});
- assert.neq(null, conn, "mongod was unable to start up");
- db = conn.getDB("concurrency");
- db.dropDatabase();
+const conn = MongoRunner.runMongod({nojournal: ""});
+assert.neq(null, conn, "mongod was unable to start up");
+db = conn.getDB("concurrency");
+db.dropDatabase();
- const NRECORDS = 3 * 1024 * 1024;
+const NRECORDS = 3 * 1024 * 1024;
- print("loading " + NRECORDS + " documents (progress msg every 1024*1024 documents)");
- var bulk = db.conc.initializeUnorderedBulkOp();
- for (var i = 0; i < NRECORDS; i++) {
- bulk.insert({x: i});
- }
- assert.writeOK(bulk.execute());
+print("loading " + NRECORDS + " documents (progress msg every 1024*1024 documents)");
+var bulk = db.conc.initializeUnorderedBulkOp();
+for (var i = 0; i < NRECORDS; i++) {
+ bulk.insert({x: i});
+}
+assert.writeOK(bulk.execute());
- print("making an index (this will take a while)");
- db.conc.ensureIndex({x: 1});
+print("making an index (this will take a while)");
+db.conc.ensureIndex({x: 1});
- var c1 = db.conc.count({x: {$lt: NRECORDS}});
+var c1 = db.conc.count({x: {$lt: NRECORDS}});
- const updater = startParallelShell(
- "db = db.getSisterDB('concurrency');\
+const updater = startParallelShell(
+ "db = db.getSisterDB('concurrency');\
db.concflag.insert({ inprog: true });\
sleep(20);\
assert.writeOK(db.conc.update({}, \
{ $inc: { x: " +
- NRECORDS +
- "}}, false, true)); \
+ NRECORDS +
+ "}}, false, true)); \
assert.writeOK(db.concflag.update({}, { inprog: false }));");
- assert.soon(function() {
- var x = db.concflag.findOne();
- return x && x.inprog;
- }, "wait for fork", 30000, 1);
+assert.soon(function() {
+ var x = db.concflag.findOne();
+ return x && x.inprog;
+}, "wait for fork", 30000, 1);
- let querycount = 0;
- let decrements = 0;
- let misses = 0;
+let querycount = 0;
+let decrements = 0;
+let misses = 0;
- assert.soon(function() {
- const c2 = db.conc.count({x: {$lt: NRECORDS}});
- print(c2);
- querycount++;
- if (c2 < c1)
- decrements++;
- else
- misses++;
- c1 = c2;
- return !db.concflag.findOne().inprog;
- }, "update never finished", 2 * 60 * 60 * 1000, 10);
+assert.soon(function() {
+ const c2 = db.conc.count({x: {$lt: NRECORDS}});
+ print(c2);
+ querycount++;
+ if (c2 < c1)
+ decrements++;
+ else
+ misses++;
+ c1 = c2;
+ return !db.concflag.findOne().inprog;
+}, "update never finished", 2 * 60 * 60 * 1000, 10);
- print(querycount + " queries, " + decrements + " decrements, " + misses + " misses");
+print(querycount + " queries, " + decrements + " decrements, " + misses + " misses");
- assert.eq(NRECORDS, db.conc.count(), "AT END 1");
+assert.eq(NRECORDS, db.conc.count(), "AT END 1");
- updater(); // wait()
+updater(); // wait()
- MongoRunner.stopMongod(conn);
+MongoRunner.stopMongod(conn);
})();