Files
mongo/jstests/fsync.js
Andy Schwerin e422ec341c SERVER-5855 Refuse to run an fsyncLock() command from a locked context.
fsyncLock() inside a locked context deadlocks the server immediately.
2012-05-16 17:56:07 -04:00

23 lines
524 B
JavaScript

// test the lock/unlock snapshotting feature a bit
x=db.runCommand({fsync:1,lock:1}); // not on admin db
assert(!x.ok,"D");
x=db.fsyncLock(); // uses admin automatically
assert(x.ok,"C");
y = db.currentOp();
assert(y.fsyncLock,"B");
z = db.fsyncUnlock();
assert( db.currentOp().fsyncLock == null, "A2" );
// make sure the db is unlocked
db.jstests_fsync.insert({x:1});
db.getLastError();
assert( db.currentOp().fsyncLock == null, "A" );
assert( !db.eval('db.fsyncLock()').ok, "eval('db.fsyncLock()') should fail." )