diff options
author | Eliot Horowitz <eliot@10gen.com> | 2013-05-17 12:15:49 -0400 |
---|---|---|
committer | Eliot Horowitz <eliot@10gen.com> | 2013-05-17 12:25:23 -0400 |
commit | 321e6eb0ed18154ea1b7ddbbfbd943189a007d4c (patch) | |
tree | fa04b1fbbb51ce36182d701b7a5c1279cb29799a /src/mongo/db/matcher/matcher.cpp | |
parent | 3bd0695d6d53f2f6d33139086fe45fa6d645de19 (diff) | |
download | mongo-321e6eb0ed18154ea1b7ddbbfbd943189a007d4c.tar.gz |
SERVER-6400: $ne is not its own operator anymore, $not + $eq
Diffstat (limited to 'src/mongo/db/matcher/matcher.cpp')
-rw-r--r-- | src/mongo/db/matcher/matcher.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/mongo/db/matcher/matcher.cpp b/src/mongo/db/matcher/matcher.cpp index 94f5ef32df3..685f5d612c0 100644 --- a/src/mongo/db/matcher/matcher.cpp +++ b/src/mongo/db/matcher/matcher.cpp @@ -306,15 +306,24 @@ namespace mongo { return newIn.release(); } else if ( cmp->getRHS().type() == jstNULL ) { - spliceInfo->hasNullEquality = true; + //spliceInfo->hasNullEquality = true; + return NULL; } } case MatchExpression::LTE: case MatchExpression::LT: case MatchExpression::GT: - case MatchExpression::GTE: - case MatchExpression::NE: + case MatchExpression::GTE: { + const ComparisonMatchExpression* cmp = + static_cast<const ComparisonMatchExpression*>( full ); + + if ( cmp->getRHS().type() == jstNULL ) { + // null and indexes don't play nice + //spliceInfo->hasNullEquality = true; + return NULL; + } + } case MatchExpression::REGEX: case MatchExpression::MOD: { const LeafMatchExpression* lme = static_cast<const LeafMatchExpression*>( full ); |