diff options
author | Yuhong Zhang <yuhong.zhang@mongodb.com> | 2023-02-08 23:53:43 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2023-02-09 13:30:35 +0000 |
commit | 1d79792d701ab899165a7c56108633bbeac3c924 (patch) | |
tree | 3b09e1b9ae443028d8900fedeedfc572493a46b5 /src/mongo/db/query | |
parent | 4c40b70635fc5dea877f5bb5f7e98865e43d7b06 (diff) | |
download | mongo-1d79792d701ab899165a7c56108633bbeac3c924.tar.gz |
SERVER-73602 Add the stub of the TIMESERIES_WRITE query stage
Diffstat (limited to 'src/mongo/db/query')
-rw-r--r-- | src/mongo/db/query/classic_stage_builder.cpp | 1 | ||||
-rw-r--r-- | src/mongo/db/query/plan_executor_impl.cpp | 5 | ||||
-rw-r--r-- | src/mongo/db/query/stage_types.cpp | 1 | ||||
-rw-r--r-- | src/mongo/db/query/stage_types.h | 3 |
4 files changed, 10 insertions, 0 deletions
diff --git a/src/mongo/db/query/classic_stage_builder.cpp b/src/mongo/db/query/classic_stage_builder.cpp index a11db550e04..2410384ebcf 100644 --- a/src/mongo/db/query/classic_stage_builder.cpp +++ b/src/mongo/db/query/classic_stage_builder.cpp @@ -421,6 +421,7 @@ std::unique_ptr<PlanStage> ClassicStageBuilder::build(const QuerySolutionNode* r case STAGE_TRIAL: case STAGE_UNKNOWN: case STAGE_UNPACK_TIMESERIES_BUCKET: + case STAGE_TIMESERIES_WRITE: case STAGE_SENTINEL: case STAGE_COLUMN_SCAN: case STAGE_UPDATE: { diff --git a/src/mongo/db/query/plan_executor_impl.cpp b/src/mongo/db/query/plan_executor_impl.cpp index 677267fc8b7..cc97c25e7f3 100644 --- a/src/mongo/db/query/plan_executor_impl.cpp +++ b/src/mongo/db/query/plan_executor_impl.cpp @@ -611,6 +611,11 @@ long long PlanExecutorImpl::executeDelete() { const SpecificStats* stats = _root->child()->getSpecificStats(); return static_cast<const DeleteStats*>(stats)->docsDeleted; } + case StageType::STAGE_TIMESERIES_WRITE: { + const auto* tsWriteStats = + static_cast<const TimeseriesWriteStats*>(_root->getSpecificStats()); + return tsWriteStats->measurementsDeleted; + } default: { invariant(StageType::STAGE_DELETE == _root->stageType() || StageType::STAGE_BATCHED_DELETE == _root->stageType()); diff --git a/src/mongo/db/query/stage_types.cpp b/src/mongo/db/query/stage_types.cpp index 3de3fa2086e..934fe3107ec 100644 --- a/src/mongo/db/query/stage_types.cpp +++ b/src/mongo/db/query/stage_types.cpp @@ -74,6 +74,7 @@ StringData stageTypeToString(StageType stageType) { {STAGE_SUBPLAN, "SUBPLAN"_sd}, {STAGE_TEXT_OR, "TEXT_OR"_sd}, {STAGE_TEXT_MATCH, "TEXT_MATCH"_sd}, + {STAGE_TIMESERIES_WRITE, "TIMESERIES_WRITE"_sd}, {STAGE_TRIAL, "TRIAL"_sd}, {STAGE_UNKNOWN, "UNKNOWN"_sd}, {STAGE_UNPACK_TIMESERIES_BUCKET, "UNPACK_TIMESERIES_BUCKET"_sd}, diff --git a/src/mongo/db/query/stage_types.h b/src/mongo/db/query/stage_types.h index f5ee3a70d4c..6398573f543 100644 --- a/src/mongo/db/query/stage_types.h +++ b/src/mongo/db/query/stage_types.h @@ -117,6 +117,9 @@ enum StageType { STAGE_TEXT_OR, STAGE_TEXT_MATCH, + // Stage for modifying bucket documents in a time-series bucket collection. + STAGE_TIMESERIES_WRITE, + // Stage for choosing between two alternate plans based on an initial trial period. STAGE_TRIAL, |