summaryrefslogtreecommitdiff
path: root/jstests/sharding/geo_near_sharded.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/sharding/geo_near_sharded.js')
-rw-r--r--jstests/sharding/geo_near_sharded.js104
1 files changed, 52 insertions, 52 deletions
diff --git a/jstests/sharding/geo_near_sharded.js b/jstests/sharding/geo_near_sharded.js
index 361468cec18..714876e7fda 100644
--- a/jstests/sharding/geo_near_sharded.js
+++ b/jstests/sharding/geo_near_sharded.js
@@ -1,67 +1,67 @@
// SERVER-7906
(function() {
- 'use strict';
+'use strict';
- var coll = 'points';
+var coll = 'points';
- function test(st, db, sharded, indexType) {
- printjson(db);
+function test(st, db, sharded, indexType) {
+ printjson(db);
- if (sharded) {
- var shards = [st.shard0, st.shard1, st.shard2];
+ if (sharded) {
+ var shards = [st.shard0, st.shard1, st.shard2];
+ assert.commandWorked(
+ st.s0.adminCommand({shardCollection: db[coll].getFullName(), key: {rand: 1}}));
+ for (var i = 1; i < 10; i++) {
+ // split at 0.1, 0.2, ... 0.9
assert.commandWorked(
- st.s0.adminCommand({shardCollection: db[coll].getFullName(), key: {rand: 1}}));
- for (var i = 1; i < 10; i++) {
- // split at 0.1, 0.2, ... 0.9
- assert.commandWorked(
- st.s0.adminCommand({split: db[coll].getFullName(), middle: {rand: i / 10}}));
- assert.commandWorked(st.s0.adminCommand({
- moveChunk: db[coll].getFullName(),
- find: {rand: i / 10},
- to: shards[i % shards.length].shardName
- }));
- }
-
- var config = db.getSiblingDB("config");
- assert.eq(config.chunks.count({'ns': db[coll].getFullName()}), 10);
+ st.s0.adminCommand({split: db[coll].getFullName(), middle: {rand: i / 10}}));
+ assert.commandWorked(st.s0.adminCommand({
+ moveChunk: db[coll].getFullName(),
+ find: {rand: i / 10},
+ to: shards[i % shards.length].shardName
+ }));
}
- Random.setRandomSeed();
-
- var bulk = db[coll].initializeUnorderedBulkOp();
- var numPts = 10 * 1000;
- for (var i = 0; i < numPts; i++) {
- var lat = 90 - Random.rand() * 180;
- var lng = 180 - Random.rand() * 360;
- bulk.insert({rand: Math.random(), loc: [lng, lat]});
- }
- assert.writeOK(bulk.execute());
- assert.eq(db[coll].count(), numPts);
+ var config = db.getSiblingDB("config");
+ assert.eq(config.chunks.count({'ns': db[coll].getFullName()}), 10);
+ }
- assert.commandWorked(db[coll].ensureIndex({loc: indexType}));
+ Random.setRandomSeed();
- let res = assert.commandWorked(db.runCommand({
- aggregate: coll,
- cursor: {},
- pipeline: [{
- $geoNear: {
- near: [0, 0],
- spherical: true,
- includeLocs: "match",
- distanceField: "dist",
- }
- }]
- }),
- tojson({sharded: sharded, indexType: indexType}));
- assert.gt(res.cursor.firstBatch.length, 0, tojson(res));
+ var bulk = db[coll].initializeUnorderedBulkOp();
+ var numPts = 10 * 1000;
+ for (var i = 0; i < numPts; i++) {
+ var lat = 90 - Random.rand() * 180;
+ var lng = 180 - Random.rand() * 360;
+ bulk.insert({rand: Math.random(), loc: [lng, lat]});
}
+ assert.writeOK(bulk.execute());
+ assert.eq(db[coll].count(), numPts);
+
+ assert.commandWorked(db[coll].ensureIndex({loc: indexType}));
+
+ let res = assert.commandWorked(db.runCommand({
+ aggregate: coll,
+ cursor: {},
+ pipeline: [{
+ $geoNear: {
+ near: [0, 0],
+ spherical: true,
+ includeLocs: "match",
+ distanceField: "dist",
+ }
+ }]
+ }),
+ tojson({sharded: sharded, indexType: indexType}));
+ assert.gt(res.cursor.firstBatch.length, 0, tojson(res));
+}
- // TODO: SERVER-33954 Remove shardAsReplicaSet: false
- var st = new ShardingTest({shards: 3, mongos: 1, other: {shardAsReplicaSet: false}});
- assert.commandWorked(st.s0.adminCommand({enablesharding: "test"}));
- st.ensurePrimaryShard('test', st.shard1.shardName);
+// TODO: SERVER-33954 Remove shardAsReplicaSet: false
+var st = new ShardingTest({shards: 3, mongos: 1, other: {shardAsReplicaSet: false}});
+assert.commandWorked(st.s0.adminCommand({enablesharding: "test"}));
+st.ensurePrimaryShard('test', st.shard1.shardName);
- test(st, st.getDB('test'), true, '2dsphere');
- st.stop();
+test(st, st.getDB('test'), true, '2dsphere');
+st.stop();
})();