summaryrefslogtreecommitdiff
path: root/jstests/mmap_v1
diff options
context:
space:
mode:
authorEliot Horowitz <eliot@10gen.com>2014-07-28 11:36:30 -0400
committerEliot Horowitz <eliot@10gen.com>2014-07-29 23:46:48 -0400
commit83a289681a8d95569e59513ddc9fed3fef7801e9 (patch)
tree753ba6e69468e16db2c64c1fa6e60ca30b2a8eb9 /jstests/mmap_v1
parentd242afcbfe5dcd9db91cc28d32d4c0f4bc077772 (diff)
downloadmongo-83a289681a8d95569e59513ddc9fed3fef7801e9.tar.gz
SERVER-13635: move power of 2 test to mmap_v1
Diffstat (limited to 'jstests/mmap_v1')
-rw-r--r--jstests/mmap_v1/fts1.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/jstests/mmap_v1/fts1.js b/jstests/mmap_v1/fts1.js
new file mode 100644
index 00000000000..6bd138d6c25
--- /dev/null
+++ b/jstests/mmap_v1/fts1.js
@@ -0,0 +1,29 @@
+load( "jstests/libs/fts.js" );
+
+t = db.text1;
+t.drop();
+
+// this test requires usePowerOf2Sizes to be off
+db.createCollection( t.getName(), {"usePowerOf2Sizes" : false } );
+assert.eq(0, t.stats().userFlags);
+
+assert.eq( [] , queryIDS( t , "az" ) , "A0" );
+
+t.save( { _id : 1 , x : "az b c" } );
+t.save( { _id : 2 , x : "az b" } );
+t.save( { _id : 3 , x : "b c" } );
+t.save( { _id : 4 , x : "b c d" } );
+
+assert.eq(t.stats().userFlags, 0,
+ "A new collection should not have power-of-2 storage allocation strategy");
+t.ensureIndex( { x : "text" } );
+assert.eq(t.stats().userFlags, 1,
+ "Creating a text index on a collection should change the allocation strategy " +
+ "to power-of-2.");
+
+assert.eq( [1,2,3,4] , queryIDS( t , "c az" ) , "A1" );
+assert.eq( [4] , queryIDS( t , "d" ) , "A2" );
+
+idx = db.system.indexes.findOne( { ns: t.getFullName(), "weights.x" : 1 } )
+assert( idx.v >= 1, tojson( idx ) )
+assert( idx.textIndexVersion >= 1, tojson( idx ) )