2009-12-28 13:05:11 -08:00
|
|
|
// perform inserts in parallel from several clients
|
2016-02-04 12:30:13 -05:00
|
|
|
import {EventGenerator, ParallelTester} from "jstests/libs/parallelTester.js";
|
2009-12-28 13:05:11 -08:00
|
|
|
|
2009-12-29 12:02:21 -08:00
|
|
|
let f = db.jstests_parallel_insert;
|
2009-12-22 17:56:54 -08:00
|
|
|
f.drop();
|
2020-11-17 13:45:05 +00:00
|
|
|
f.createIndex({who: 1});
|
2009-12-22 13:07:36 -08:00
|
|
|
|
2010-01-05 12:52:26 -08:00
|
|
|
Random.setRandomSeed();
|
2009-12-22 13:07:36 -08:00
|
|
|
|
2010-01-05 12:52:26 -08:00
|
|
|
let t = new ParallelTester();
|
2009-12-22 15:08:17 -08:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
for (let id = 0; id < 10; ++id) {
|
|
|
|
|
var g = new EventGenerator(id, "jstests_parallel_insert", Random.randInt(20));
|
|
|
|
|
for (let j = 0; j < 1000; ++j) {
|
|
|
|
|
if (j % 50 == 0) {
|
|
|
|
|
g.addCheckCount(j, {who: id});
|
2010-01-05 14:05:40 -08:00
|
|
|
}
|
2016-03-09 12:17:50 -05:00
|
|
|
g.addInsert({i: j, who: id});
|
2010-01-04 17:03:34 -08:00
|
|
|
}
|
2016-03-09 12:17:50 -05:00
|
|
|
t.add(EventGenerator.dispatch, g.getEvents());
|
2009-12-22 17:56:54 -08:00
|
|
|
}
|
|
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
t.run("one or more tests failed");
|
2009-12-28 12:03:47 -08:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
assert(f.validate().valid);
|