diff options
author | Bernard Gorman <bernard.gorman@gmail.com> | 2017-09-26 23:23:48 -0400 |
---|---|---|
committer | Bernard Gorman <bernard.gorman@gmail.com> | 2017-10-04 10:14:35 +0100 |
commit | 939f2bcda18db41b774bbe3cf16e1d4928c58e5d (patch) | |
tree | 7b99539bf440a9d76030a07c79b3347792fb5f7d /src/mongo/db/pipeline/document_source_check_resume_token.h | |
parent | 284d80ba6ee928cdf3d8f23c161a7ee1bf4a8faf (diff) | |
download | mongo-939f2bcda18db41b774bbe3cf16e1d4928c58e5d.tar.gz |
SERVER-29141 Extend StageConstraints to allow kLocalOnly and kMongos host requirements, given pipeline split state
Diffstat (limited to 'src/mongo/db/pipeline/document_source_check_resume_token.h')
-rw-r--r-- | src/mongo/db/pipeline/document_source_check_resume_token.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mongo/db/pipeline/document_source_check_resume_token.h b/src/mongo/db/pipeline/document_source_check_resume_token.h index 09a45d8277b..2ff83bb2b35 100644 --- a/src/mongo/db/pipeline/document_source_check_resume_token.h +++ b/src/mongo/db/pipeline/document_source_check_resume_token.h @@ -60,7 +60,7 @@ public: GetNextResult getNext() final; const char* getSourceName() const final; - StageConstraints constraints() const final { + StageConstraints constraints(Pipeline::SplitState pipeState) const final { return {StreamType::kStreaming, PositionRequirement::kNone, HostTypeRequirement::kAnyShard, @@ -95,10 +95,13 @@ public: GetNextResult getNext() final; const char* getSourceName() const final; - StageConstraints constraints() const final { + StageConstraints constraints(Pipeline::SplitState pipeState) const final { + // This stage should never be in the shards part of a split pipeline. + invariant(pipeState != Pipeline::SplitState::kSplitForShards); return {StreamType::kStreaming, PositionRequirement::kNone, - HostTypeRequirement::kNone, + (pipeState == Pipeline::SplitState::kUnsplit ? HostTypeRequirement::kNone + : HostTypeRequirement::kMongoS), DiskUseRequirement::kNoDiskUse, FacetRequirement::kNotAllowed}; } |