blob: fee8ab3d1a3afc3281668079fdd830a0aca1c7b0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
'use strict';
/**
* drop_database.js
*
* Repeatedly creates and drops a database.
*/
var $config = (function() {
var states = {
init: function init(db, collName) {
this.uniqueDBName = db.getName() + 'drop_database' + this.tid;
},
createAndDrop: function createAndDrop(db, collName) {
// TODO: should we ever do something different?
// e.g. create multiple collections on the database and then drop?
var myDB = db.getSiblingDB(this.uniqueDBName);
assertAlways.commandWorked(myDB.createCollection(collName));
var res = myDB.dropDatabase();
assertAlways.commandWorked(res);
assertAlways.eq(this.uniqueDBName, res.dropped);
}
};
var transitions = {
init: { createAndDrop: 1 },
createAndDrop: { createAndDrop: 1 }
};
return {
threadCount: 10,
// We only run a few iterations to reduce the amount of data cumulatively
// written to disk by mmapv1. For example, setting 10 threads and 5
// iterations causes this workload to write at least 32MB (.ns and .0 files)
// * 10 threads * 5 iterations worth of data to disk, which can be slow on
// test hosts.
iterations: 5,
states: states,
transitions: transitions
};
})();
|