diff options
author | David Storch <david.storch@10gen.com> | 2016-01-20 18:20:36 -0500 |
---|---|---|
committer | David Storch <david.storch@10gen.com> | 2016-01-29 13:29:43 -0500 |
commit | dac2f722f8aaec2917dce98862d58abde2605f7a (patch) | |
tree | bbf0f3d1f71f9419f36ad7550e00c329a2e6e76e /src/mongo/db/exec/count_scan.cpp | |
parent | 0bbec1a32eabf241094ff29732f5a646a893f052 (diff) | |
download | mongo-dac2f722f8aaec2917dce98862d58abde2605f7a.tar.gz |
SERVER-22133 generate COUNT_SCAN plans properly from the plan cache
Diffstat (limited to 'src/mongo/db/exec/count_scan.cpp')
-rw-r--r-- | src/mongo/db/exec/count_scan.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mongo/db/exec/count_scan.cpp b/src/mongo/db/exec/count_scan.cpp index 035f6b15a02..e65e7977c55 100644 --- a/src/mongo/db/exec/count_scan.cpp +++ b/src/mongo/db/exec/count_scan.cpp @@ -105,7 +105,11 @@ PlanStage::StageState CountScan::doWork(WorkingSetID* out) { return PlanStage::NEED_TIME; } - *out = WorkingSet::INVALID_ID; + WorkingSetID id = _workingSet->allocate(); + WorkingSetMember* member = _workingSet->get(id); + member->obj = Snapshotted<BSONObj>(SnapshotId(), BSONObj().getOwned()); + member->transitionToOwnedObj(); + *out = id; return PlanStage::ADVANCED; } |