summaryrefslogtreecommitdiff
path: root/jstests/core/org.js
blob: 4bc4a813b4cc65f61c413d2864e51c7760fe2c3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// SERVER-2282 $or de duping with sparse indexes

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

t.ensureIndex({a: 1}, {sparse: true});
t.ensureIndex({b: 1});

t.remove({});
t.save({a: 1, b: 2});
assert.eq(1, t.count({$or: [{a: 1}, {b: 2}]}));

t.remove({});
t.save({a: null, b: 2});
assert.eq(1, t.count({$or: [{a: null}, {b: 2}]}));

t.remove({});
t.save({b: 2});
assert.eq(1, t.count({$or: [{a: null}, {b: 2}]}));