summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/document_source_merge.h
diff options
context:
space:
mode:
authorMihai Andrei <mihai.andrei@mongodb.com>2020-01-29 15:13:38 -0500
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-02-19 22:44:37 +0000
commitc54a777a4a154984f5595b11993d7d009350a38c (patch)
treeb709682805f4ebc99aab698beeeefc83427668d9 /src/mongo/db/pipeline/document_source_merge.h
parentd8810b45d790ebce228ff484dfc27494aadd2c6b (diff)
downloadmongo-c54a777a4a154984f5595b11993d7d009350a38c.tar.gz
SERVER-44689 Add serverStatus counter for each use of an aggregation stage in a user's request
Diffstat (limited to 'src/mongo/db/pipeline/document_source_merge.h')
-rw-r--r--src/mongo/db/pipeline/document_source_merge.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/mongo/db/pipeline/document_source_merge.h b/src/mongo/db/pipeline/document_source_merge.h
index 808836e0d77..464b4cfdaa0 100644
--- a/src/mongo/db/pipeline/document_source_merge.h
+++ b/src/mongo/db/pipeline/document_source_merge.h
@@ -31,6 +31,7 @@
#include "mongo/db/pipeline/document_source_merge_gen.h"
#include "mongo/db/pipeline/document_source_writer.h"
+#include "mongo/db/pipeline/lite_parsed_pipeline.h"
namespace mongo {
@@ -68,21 +69,22 @@ public:
* collection is unsharded. This ensures that the unique index verification happens once on
* mongos and can be bypassed on the shards.
*/
- class LiteParsed final : public LiteParsedDocumentSourceForeignCollection {
+ class LiteParsed final : public LiteParsedDocumentSourceNestedPipelines {
public:
- LiteParsed(NamespaceString foreignNss,
+ LiteParsed(std::string parseTimeName,
+ NamespaceString foreignNss,
MergeWhenMatchedModeEnum whenMatched,
- MergeWhenNotMatchedModeEnum whenNotMatched)
- : LiteParsedDocumentSourceForeignCollection(std::move(foreignNss)),
+ MergeWhenNotMatchedModeEnum whenNotMatched,
+ boost::optional<LiteParsedPipeline> onMatchedPipeline)
+ : LiteParsedDocumentSourceNestedPipelines(
+ std::move(parseTimeName), std::move(foreignNss), std::move(onMatchedPipeline)),
_whenMatched(whenMatched),
_whenNotMatched(whenNotMatched) {}
- using LiteParsedDocumentSourceForeignCollection::LiteParsedDocumentSourceForeignCollection;
-
static std::unique_ptr<LiteParsed> parse(const NamespaceString& nss,
const BSONElement& spec);
- bool allowedToPassthroughFromMongos() const final {
+ bool allowedToPassthroughFromMongos() const {
return false;
}