Files
mongo/jstests/disk/preallocate.js
2011-01-20 17:34:37 -07:00

30 lines
907 B
JavaScript

// check that there is preallocation on explicit createCollection() and no unncessary preallocation after restart
port = allocatePorts( 1 )[ 0 ];
var baseName = "jstests_preallocate";
var m = startMongod( "--port", port, "--dbpath", "/data/db/" + baseName );
assert.eq( 0, m.getDBs().totalSize );
m.getDB( baseName ).createCollection( baseName + "1" );
expectedMB = 100;
if ( m.getDB( baseName ).serverBits() < 64 )
expectedMB /= 4;
assert.soon( function() { return m.getDBs().totalSize > expectedMB * 1000000; }, "\n\n\nFAIL preallocate.js expected second file to bring total size over " + expectedMB + "MB" );
stopMongod( port );
var m = startMongoProgram( "mongod", "--port", port, "--dbpath", "/data/db/" + baseName );
size = m.getDBs().totalSize;
m.getDB( baseName ).createCollection( baseName + "2" );
sleep( 2000 ); // give prealloc a chance
assert.eq( size, m.getDBs().totalSize );