summaryrefslogtreecommitdiff
path: root/jstests/core/geo_update_btree.js
blob: 12a10c736b80fa0a28575b32491f774a15852fdd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Tests whether the geospatial search is stable under btree updates

var coll = db.getCollection( "jstests_geo_update_btree" );
coll.drop();

coll.ensureIndex( { loc : '2d' } );

var big = new Array( 3000 ).toString();

if (testingReplication) {
    coll.setWriteConcern({ w: 2 });
}

Random.setRandomSeed();

var parallelInsert = startParallelShell(
    "Random.setRandomSeed();" +
    "for ( var i = 0; i < 1000; i++ ) {" +
    "    var doc = { loc: [ Random.rand() * 180, Random.rand() * 180 ], v: '' };" +
    "    db.jstests_geo_update_btree.insert(doc);" +
    "}");

for ( i = 0; i < 1000; i++ ) {
    coll.update(
            { loc : { $within : { $center : [ [ Random.rand() * 180, Random.rand() * 180 ], Random.rand() * 50 ] } } },
            { $set : { v : big } }, false, true );

    if( i % 10 == 0 ) print( i );
}

parallelInsert();