summaryrefslogtreecommitdiff
path: root/jstests/core/indexc.js
blob: bf5735380faadc02c29451f868e75195a2c886d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

t = db.indexc;
t.drop();

const startMillis = new Date().getTime();
for (var i = 1; i < 100; i++) {
    var d = new Date(startMillis + i);
    t.save({a: i, ts: d, cats: [i, i + 1, i + 2]});
    if (i == 51)
        mid = d;
}

assert.eq(50, t.find({ts: {$lt: mid}}).itcount(), "A");
assert.eq(50, t.find({ts: {$lt: mid}}).sort({ts: 1}).itcount(), "B");

t.createIndex({ts: 1, cats: 1});
t.createIndex({cats: 1});

// multi-key bug was firing here (related to getsetdup()):
assert.eq(50, t.find({ts: {$lt: mid}}).itcount(), "C");
assert.eq(50, t.find({ts: {$lt: mid}}).sort({ts: 1}).itcount(), "D");