19 lines
395 B
JavaScript
19 lines
395 B
JavaScript
// 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}]} ) );
|