summaryrefslogtreecommitdiff
path: root/jstests/core/multi2.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/multi2.js')
-rw-r--r--jstests/core/multi2.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/jstests/core/multi2.js b/jstests/core/multi2.js
new file mode 100644
index 00000000000..7c72722fd34
--- /dev/null
+++ b/jstests/core/multi2.js
@@ -0,0 +1,23 @@
+
+t = db.multi2;
+t.drop();
+
+t.save( { x : 1 , a : [ 1 ] } );
+t.save( { x : 1 , a : [] } );
+t.save( { x : 1 , a : null } );
+t.save( {} );
+
+assert.eq( 3 , t.find( { x : 1 } ).count() , "A" );
+
+t.ensureIndex( { x : 1 } );
+assert.eq( 3 , t.find( { x : 1 } ).count() , "B" );
+assert.eq( 4 , t.find().sort( { x : 1 , a : 1 } ).count() , "s1" );
+assert.eq( 1 , t.find( { x : 1 , a : null } ).count() , "B2" );
+
+t.dropIndex( { x : 1 } );
+t.ensureIndex( { x : 1 , a : 1 } );
+assert.eq( 3 , t.find( { x : 1 } ).count() , "C" ); // SERVER-279
+assert.eq( 4 , t.find().sort( { x : 1 , a : 1 } ).count() , "s2" );
+assert.eq( 1 , t.find( { x : 1 , a : null } ).count() , "C2" );
+
+