summaryrefslogtreecommitdiff
path: root/src/mongo/db/exec/sort.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/exec/sort.cpp')
-rw-r--r--src/mongo/db/exec/sort.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mongo/db/exec/sort.cpp b/src/mongo/db/exec/sort.cpp
index fa6955bd79f..c3779314d84 100644
--- a/src/mongo/db/exec/sort.cpp
+++ b/src/mongo/db/exec/sort.cpp
@@ -65,11 +65,11 @@ PlanStage::StageState SortStage::doWork(WorkingSetID* out) {
auto member = _ws->get(id);
invariant(member->metadata().hasSortKey());
- auto&& extractedMember = _ws->extract(id);
+ SortableWorkingSetMember extractedMember{_ws->extract(id)};
try {
- auto sortKey = extractedMember.metadata().getSortKey();
- _sortExecutor.add(std::move(sortKey), std::move(extractedMember));
+ auto sortKey = extractedMember->metadata().getSortKey();
+ _sortExecutor.add(sortKey, extractedMember);
} catch (const AssertionException&) {
// Propagate runtime errors using the FAILED status code.
*out = WorkingSetCommon::allocateStatusMember(_ws, exceptionToStatus());
@@ -103,7 +103,7 @@ PlanStage::StageState SortStage::doWork(WorkingSetID* out) {
return PlanStage::IS_EOF;
}
- *out = _ws->emplace(std::move(*nextWsm));
+ *out = _ws->emplace(nextWsm->extract());
return PlanStage::ADVANCED;
}