summaryrefslogtreecommitdiff
path: root/jstests/sharding/multi_mongos2a.js
diff options
context:
space:
mode:
authorEliot Horowitz <eliot@10gen.com>2011-04-06 02:50:20 -0400
committerEliot Horowitz <eliot@10gen.com>2011-04-06 02:50:20 -0400
commit56daba0d4870a9e83739de88afacbe0b46cc975f (patch)
tree283d8323af424711b2d867ef4d8ef0d2715dc5ec /jstests/sharding/multi_mongos2a.js
parent65096208afda527b3a2c6017d667041492c35669 (diff)
downloadmongo-56daba0d4870a9e83739de88afacbe0b46cc975f.tar.gz
flushRouterConfig to force a mongos config reload SERVER-2666
Diffstat (limited to 'jstests/sharding/multi_mongos2a.js')
-rw-r--r--jstests/sharding/multi_mongos2a.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/jstests/sharding/multi_mongos2a.js b/jstests/sharding/multi_mongos2a.js
new file mode 100644
index 00000000000..9b907cc9478
--- /dev/null
+++ b/jstests/sharding/multi_mongos2a.js
@@ -0,0 +1,31 @@
+// multi_mongos2.js
+// This tests sharding an existing collection that both shards are aware of (SERVER-2828)
+
+
+// setup sharding with two mongos, s1 and s2
+s1 = new ShardingTest( "multi_mongos1" , 2 , 1 , 2 );
+s2 = s1._mongos[1];
+
+s1.adminCommand( { enablesharding : "test" } );
+s1.adminCommand( { shardcollection : "test.foo" , key : { num : 1 } } );
+
+s1.config.databases.find().forEach( printjson )
+
+s1.getDB('test').existing.insert({_id:1})
+assert.eq(1, s1.getDB('test').existing.count({_id:1}));
+assert.eq(1, s2.getDB('test').existing.count({_id:1}));
+
+s2.adminCommand( { shardcollection : "test.existing" , key : { _id : 1 } } );
+assert.eq(true, s2.getDB('test').existing.stats().sharded);
+
+
+res = s2.getDB( "admin" ).runCommand( { moveChunk: "test.existing" , find : { _id : 1 } , to : s1.getOther( s1.getServer( "test" ) ).name } );
+
+assert.eq(1 , res.ok, tojson(res));
+
+s1.adminCommand( { flushRouterConfig : 1 } )
+
+assert.eq(1, s1.getDB('test').existing.count({_id:1})); // SERVER-2828
+assert.eq(1, s2.getDB('test').existing.count({_id:1}));
+
+s1.stop();