aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorva-kuznecov <va-kuznecov@ydb.tech>2023-03-07 13:15:19 +0300
committerva-kuznecov <va-kuznecov@ydb.tech>2023-03-07 13:15:19 +0300
commitc9f26b58f812f3dc4286d0409dcd0b658a82d115 (patch)
tree44269c5a579d1d77f7ae5ff1b170ee6ff2e3c2ae
parent7bcc73baa9a21ef14da7dec5b5cc48c5794784df (diff)
downloadydb-c9f26b58f812f3dc4286d0409dcd0b658a82d115.tar.gz
Fix stats reporting in scripting requests
-rw-r--r--ydb/core/kqp/session_actor/kqp_session_actor.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/ydb/core/kqp/session_actor/kqp_session_actor.cpp b/ydb/core/kqp/session_actor/kqp_session_actor.cpp
index 0b1f8175af6..5425ddd5319 100644
--- a/ydb/core/kqp/session_actor/kqp_session_actor.cpp
+++ b/ydb/core/kqp/session_actor/kqp_session_actor.cpp
@@ -206,8 +206,12 @@ struct TKqpQueryState {
return cStats;
}
- bool CollectStatsDefined() const {
- return GetStatsMode() != Ydb::Table::QueryStatsCollection::STATS_COLLECTION_NONE;
+ bool ReportStats() const {
+ return GetStatsMode() != Ydb::Table::QueryStatsCollection::STATS_COLLECTION_NONE
+ // always report stats for scripting subrequests
+ || GetType() == NKikimrKqp::QUERY_TYPE_AST_DML
+ || GetType() == NKikimrKqp::QUERY_TYPE_AST_SCAN
+ ;
}
bool HasPreparedQuery() const {
@@ -1449,7 +1453,7 @@ public:
[this]() { return this->QueryState->ExtractQueryText(); });
}
- if (QueryState->CollectStatsDefined()) {
+ if (QueryState->ReportStats()) {
response->SetQueryPlan(SerializeAnalyzePlan(*stats));
response->MutableQueryStats()->Swap(stats);
}