From e141664339e7b40a6259b055ee70e65d1fd11a07 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 5 Dec 2022 09:17:51 +0800 Subject: [PATCH] =?UTF-8?q?[fix](statistics)=20fix=20missing=20scanBytes?= =?UTF-8?q?=20and=20scanRows=20in=20query=20statist=E2=80=A6=20(#14750)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [fix](statistics) fix missing scanBytes and scanRows in query statistics when enable_vectorized_engine=true. Co-authored-by: wangxiangyu@360shuke.com --- be/src/vec/exec/scan/new_olap_scan_node.cpp | 7 +++++++ be/src/vec/exec/scan/new_olap_scan_node.h | 1 + 2 files changed, 8 insertions(+) diff --git a/be/src/vec/exec/scan/new_olap_scan_node.cpp b/be/src/vec/exec/scan/new_olap_scan_node.cpp index c72f5b289d..007cd3c65a 100644 --- a/be/src/vec/exec/scan/new_olap_scan_node.cpp +++ b/be/src/vec/exec/scan/new_olap_scan_node.cpp @@ -38,6 +38,13 @@ NewOlapScanNode::NewOlapScanNode(ObjectPool* pool, const TPlanNode& tnode, } } +Status NewOlapScanNode::collect_query_statistics(QueryStatistics* statistics) { + RETURN_IF_ERROR(ExecNode::collect_query_statistics(statistics)); + statistics->add_scan_bytes(_read_compressed_counter->value()); + statistics->add_scan_rows(_raw_rows_counter->value()); + return Status::OK(); +} + Status NewOlapScanNode::prepare(RuntimeState* state) { RETURN_IF_ERROR(VScanNode::prepare(state)); SCOPED_CONSUME_MEM_TRACKER(mem_tracker_growh()); diff --git a/be/src/vec/exec/scan/new_olap_scan_node.h b/be/src/vec/exec/scan/new_olap_scan_node.h index e72ed82a4a..474321f8ac 100644 --- a/be/src/vec/exec/scan/new_olap_scan_node.h +++ b/be/src/vec/exec/scan/new_olap_scan_node.h @@ -33,6 +33,7 @@ public: friend class doris::pipeline::OlapScanOperator; Status prepare(RuntimeState* state) override; + Status collect_query_statistics(QueryStatistics* statistics) override; void set_scan_ranges(const std::vector& scan_ranges) override;