diff options
Diffstat (limited to 'src/mongo/db/commands/count_cmd.cpp')
-rw-r--r-- | src/mongo/db/commands/count_cmd.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mongo/db/commands/count_cmd.cpp b/src/mongo/db/commands/count_cmd.cpp index 21ec11df16f..9a961c1ed0b 100644 --- a/src/mongo/db/commands/count_cmd.cpp +++ b/src/mongo/db/commands/count_cmd.cpp @@ -44,6 +44,7 @@ #include "mongo/db/query/plan_summary_stats.h" #include "mongo/db/query/view_response_formatter.h" #include "mongo/db/s/collection_sharding_state.h" +#include "mongo/db/s/query_analysis_writer.h" #include "mongo/logv2/log.h" #include "mongo/util/database_name_util.h" @@ -249,6 +250,15 @@ public: invocation->markMirrored(); } + if (analyze_shard_key::supportsPersistingSampledQueries() && request.getSampleId()) { + analyze_shard_key::QueryAnalysisWriter::get(opCtx) + .addCountQuery(*request.getSampleId(), + nss, + request.getQuery(), + request.getCollation().value_or(BSONObj())) + .getAsync([](auto) {}); + } + if (ctx->getView()) { auto viewAggregation = countCommandAsAggregationCommand(request, nss); |