summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/pipeline_d.h
diff options
context:
space:
mode:
authorMax Hirschhorn <max.hirschhorn@mongodb.com>2016-07-25 10:21:02 -0400
committerMax Hirschhorn <max.hirschhorn@mongodb.com>2016-07-25 10:21:02 -0400
commit82cd8943dab085447ee180d4d59c2c5da778c523 (patch)
treea744233be38d20ee81a2c106950c9a6888031c6e /src/mongo/db/pipeline/pipeline_d.h
parentd19f36ab7c2df36f2d412bf8a5b7c6dbfe9f6d9d (diff)
downloadmongo-82cd8943dab085447ee180d4d59c2c5da778c523.tar.gz
SERVER-25039 Abort aggregation planning when a catalog operation occurs.
This prevents the aggregation system from trying to continue query planning when the collection longer exists.
Diffstat (limited to 'src/mongo/db/pipeline/pipeline_d.h')
-rw-r--r--src/mongo/db/pipeline/pipeline_d.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/pipeline/pipeline_d.h b/src/mongo/db/pipeline/pipeline_d.h
index 3d9a52a9bf7..76214db4925 100644
--- a/src/mongo/db/pipeline/pipeline_d.h
+++ b/src/mongo/db/pipeline/pipeline_d.h
@@ -102,7 +102,7 @@ private:
* sort, and 'projectionObj' will be set to an empty object if the query system cannot provide a
* covered projection.
*/
- static std::shared_ptr<PlanExecutor> prepareExecutor(
+ static StatusWith<std::unique_ptr<PlanExecutor>> prepareExecutor(
OperationContext* txn,
Collection* collection,
const NamespaceString& nss,
@@ -121,7 +121,7 @@ private:
static std::shared_ptr<PlanExecutor> addCursorSource(
const boost::intrusive_ptr<Pipeline>& pipeline,
const boost::intrusive_ptr<ExpressionContext>& expCtx,
- std::shared_ptr<PlanExecutor> exec,
+ std::unique_ptr<PlanExecutor> exec,
DepsTracker deps,
const BSONObj& queryObj = BSONObj(),
const BSONObj& sortObj = BSONObj(),