// This should get skipped when testing replication t = db.jstests_indexh; function debug(t) { print(t); } function extraDebug() { // printjson( db.stats() ); // db.printCollectionStats(); } // index extent freeing t.drop(); t.save({}); var s1 = db.stats().dataSize; debug("s1: " + s1); extraDebug(); t.ensureIndex({a: 1}); var s2 = db.stats().dataSize; debug("s2: " + s2); assert.automsg("s1 < s2"); t.dropIndex({a: 1}); var s3 = db.stats().dataSize; debug("s3: " + s3); extraDebug(); assert.eq.automsg("s1", "s3"); // index node freeing t.drop(); t.ensureIndex({a: 1}); for (i = 'a'; i.length < 500; i += 'a') { t.save({a: i}); } var s4 = db.stats().indexSize; debug("s4: " + s4); t.remove({}); var s5 = db.stats().indexSize; debug("s5: " + s5); assert.automsg("s5 < s4");