diff options
author | Ian Boros <puppyofkosh@gmail.com> | 2019-02-27 10:48:01 -0500 |
---|---|---|
committer | Ian Boros <puppyofkosh@gmail.com> | 2019-03-18 17:14:05 -0400 |
commit | 9950774372d4b47a0610fb810f49aeb274a3ff54 (patch) | |
tree | 63e760c47809c2a46ac12f23a4e08e30f24dd412 /src/mongo/db/query/planner_ixselect.h | |
parent | a5138072e1bb731bbbc8612c21d4bb9c4cc98270 (diff) | |
download | mongo-9950774372d4b47a0610fb810f49aeb274a3ff54.tar.gz |
SERVER-39764 fix bug where $in is planned from cache incorrectly
Diffstat (limited to 'src/mongo/db/query/planner_ixselect.h')
-rw-r--r-- | src/mongo/db/query/planner_ixselect.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mongo/db/query/planner_ixselect.h b/src/mongo/db/query/planner_ixselect.h index 93f4c4b9cd6..b4269f9b64d 100644 --- a/src/mongo/db/query/planner_ixselect.h +++ b/src/mongo/db/query/planner_ixselect.h @@ -146,6 +146,13 @@ public: */ static bool nodeIsSupportedBySparseIndex(const MatchExpression* queryExpr, bool isInElemMatch); + /** + * Some types of matches are not supported by any type of index. If this function returns + * false, then 'queryExpr' is definitely not supported for any type of index. If the function + * returns true then 'queryExpr' may (or may not) be supported by some index. + */ + static bool logicalNodeMayBeSupportedByAnIndex(const MatchExpression* queryExpr); + private: /** * Used to keep track of if any $elemMatch predicates were encountered when walking a |