summaryrefslogtreecommitdiff
path: root/src/mongo/db/query/query_solution.h
diff options
context:
space:
mode:
authorDavid Storch <david.storch@10gen.com>2015-05-29 19:15:19 -0400
committerDavid Storch <david.storch@10gen.com>2015-07-10 17:11:16 -0400
commit15c72c8570c63e2e6ba0a3d339a8286d0be604db (patch)
tree96cc37b3259e9ce7472132b8c414eb614317c037 /src/mongo/db/query/query_solution.h
parent9c63b79a8d5c8d19663850f9d668a3581dea77d5 (diff)
downloadmongo-15c72c8570c63e2e6ba0a3d339a8286d0be604db.tar.gz
SERVER-13732 rewrite contained $or queries to rooted $or in the SubplanStage
This allows queries with an $or contained within an explicit or implicit $and to be answered with more efficient plans. It also expands the use of the SubplanStage to include contained $or queries and therefore may reduce the number of plans considered for these queries.
Diffstat (limited to 'src/mongo/db/query/query_solution.h')
-rw-r--r--src/mongo/db/query/query_solution.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mongo/db/query/query_solution.h b/src/mongo/db/query/query_solution.h
index 8de5dabb40f..c5c6ca36dd2 100644
--- a/src/mongo/db/query/query_solution.h
+++ b/src/mongo/db/query/query_solution.h
@@ -28,6 +28,7 @@
#pragma once
+#include <memory>
#include "mongo/db/jsobj.h"
#include "mongo/db/matcher/expression.h"
@@ -458,6 +459,8 @@ struct IndexScanNode : public QuerySolutionNode {
QuerySolutionNode* clone() const;
+ bool operator==(const IndexScanNode& other) const;
+
BSONObjSet _sorts;
BSONObj indexKeyPattern;