diff options
Diffstat (limited to 'src/mongo/s/commands/cluster_aggregate.cpp')
-rw-r--r-- | src/mongo/s/commands/cluster_aggregate.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mongo/s/commands/cluster_aggregate.cpp b/src/mongo/s/commands/cluster_aggregate.cpp index b52beed565f..d17a80a1e70 100644 --- a/src/mongo/s/commands/cluster_aggregate.cpp +++ b/src/mongo/s/commands/cluster_aggregate.cpp @@ -66,10 +66,13 @@ namespace { // // produces the corresponding explain command: // -// {explain: {aggregate: "myCollection", pipline: [], ...}, verbosity: ...} +// {explain: {aggregate: "myCollection", pipline: [], ...}, $queryOptions: {...}, verbosity: ...} Document wrapAggAsExplain(Document aggregateCommand, ExplainOptions::Verbosity verbosity) { MutableDocument explainCommandBuilder; explainCommandBuilder["explain"] = Value(aggregateCommand); + // Downstream host targeting code expects queryOptions at the top level of the command object. + explainCommandBuilder[QueryRequest::kUnwrappedReadPrefField] = + Value(aggregateCommand[QueryRequest::kUnwrappedReadPrefField]); // Add explain command options. for (auto&& explainOption : ExplainOptions::toBSON(verbosity)) { |