blob: 3bc4c9eaca882a3f6ed90d5fabbb3dc773045feb (
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.ensureIndex({ts: 1, cats: 1});
t.ensureIndex({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");
|