This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new c0fa9b717ad branch-3.0-pick: [Opt](profile) Add timer for 
`SegmentIterator::_get_row_ranges_by_keys` (#48191) (#48343)
c0fa9b717ad is described below

commit c0fa9b717adf03f79a1964a46e1da86b82bf2c1f
Author: bobhan1 <bao...@selectdb.com>
AuthorDate: Thu Feb 27 10:49:16 2025 +0800

    branch-3.0-pick: [Opt](profile) Add timer for 
`SegmentIterator::_get_row_ranges_by_keys` (#48191) (#48343)
    
    pick https://github.com/apache/doris/pull/48191
---
 be/src/olap/olap_common.h                          | 3 ++-
 be/src/olap/rowset/segment_v2/segment_iterator.cpp | 3 ++-
 be/src/pipeline/exec/olap_scan_operator.cpp        | 5 ++++-
 be/src/pipeline/exec/olap_scan_operator.h          | 3 ++-
 be/src/vec/exec/scan/new_olap_scanner.cpp          | 5 ++++-
 5 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/be/src/olap/olap_common.h b/be/src/olap/olap_common.h
index bb20c4c0a7b..9ffac13022d 100644
--- a/be/src/olap/olap_common.h
+++ b/be/src/olap/olap_common.h
@@ -350,7 +350,8 @@ struct OlapReaderStatistics {
     int64_t rows_del_by_bitmap = 0;
     // the number of rows filtered by various column indexes.
     int64_t rows_conditions_filtered = 0;
-    int64_t generate_row_ranges_ns = 0;
+    int64_t generate_row_ranges_by_keys_ns = 0;
+    int64_t generate_row_ranges_by_column_conditions_ns = 0;
     int64_t generate_row_ranges_by_bf_ns = 0;
     int64_t generate_row_ranges_by_zonemap_ns = 0;
     int64_t generate_row_ranges_by_dict_ns = 0;
diff --git a/be/src/olap/rowset/segment_v2/segment_iterator.cpp 
b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
index 5ee9ac1ca41..d4827ac2d4b 100644
--- a/be/src/olap/rowset/segment_v2/segment_iterator.cpp
+++ b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
@@ -406,6 +406,7 @@ Status SegmentIterator::_lazy_init() {
 }
 
 Status SegmentIterator::_get_row_ranges_by_keys() {
+    SCOPED_RAW_TIMER(&_opts.stats->generate_row_ranges_by_keys_ns);
     DorisMetrics::instance()->segment_row_total->increment(num_rows());
 
     // fast path for empty segment or empty key ranges
@@ -498,7 +499,7 @@ Status SegmentIterator::_prepare_seek(const 
StorageReadOptions::KeyRange& key_ra
 }
 
 Status SegmentIterator::_get_row_ranges_by_column_conditions() {
-    SCOPED_RAW_TIMER(&_opts.stats->generate_row_ranges_ns);
+    
SCOPED_RAW_TIMER(&_opts.stats->generate_row_ranges_by_column_conditions_ns);
     if (_row_bitmap.isEmpty()) {
         return Status::OK();
     }
diff --git a/be/src/pipeline/exec/olap_scan_operator.cpp 
b/be/src/pipeline/exec/olap_scan_operator.cpp
index ce43ce0feab..e85d4ac14a4 100644
--- a/be/src/pipeline/exec/olap_scan_operator.cpp
+++ b/be/src/pipeline/exec/olap_scan_operator.cpp
@@ -69,7 +69,10 @@ Status OlapScanLocalState::_init_profile() {
     _block_init_timer = ADD_TIMER(_segment_profile, "BlockInitTime");
     _block_init_seek_timer = ADD_TIMER(_segment_profile, "BlockInitSeekTime");
     _block_init_seek_counter = ADD_COUNTER(_segment_profile, 
"BlockInitSeekCount", TUnit::UNIT);
-    _segment_generate_row_range_timer = ADD_TIMER(_segment_profile, 
"GenerateRowRangeTime");
+    _segment_generate_row_range_by_keys_timer =
+            ADD_TIMER(_segment_profile, "GenerateRowRangeByKeysTime");
+    _segment_generate_row_range_by_column_conditions_timer =
+            ADD_TIMER(_segment_profile, 
"GenerateRowRangeByColumnConditionsTime");
     _segment_generate_row_range_by_bf_timer =
             ADD_TIMER(_segment_profile, 
"GenerateRowRangeByBloomFilterIndexTime");
     _collect_iterator_merge_next_timer = ADD_TIMER(_segment_profile, 
"CollectIteratorMergeTime");
diff --git a/be/src/pipeline/exec/olap_scan_operator.h 
b/be/src/pipeline/exec/olap_scan_operator.h
index d15a61b7d0f..f065cd881cd 100644
--- a/be/src/pipeline/exec/olap_scan_operator.h
+++ b/be/src/pipeline/exec/olap_scan_operator.h
@@ -138,7 +138,8 @@ private:
     RuntimeProfile::Counter* _block_init_timer = nullptr;
     RuntimeProfile::Counter* _block_init_seek_timer = nullptr;
     RuntimeProfile::Counter* _block_init_seek_counter = nullptr;
-    RuntimeProfile::Counter* _segment_generate_row_range_timer = nullptr;
+    RuntimeProfile::Counter* _segment_generate_row_range_by_keys_timer = 
nullptr;
+    RuntimeProfile::Counter* 
_segment_generate_row_range_by_column_conditions_timer = nullptr;
     RuntimeProfile::Counter* _segment_generate_row_range_by_bf_timer = nullptr;
     RuntimeProfile::Counter* _collect_iterator_merge_next_timer = nullptr;
     RuntimeProfile::Counter* _segment_generate_row_range_by_zonemap_timer = 
nullptr;
diff --git a/be/src/vec/exec/scan/new_olap_scanner.cpp 
b/be/src/vec/exec/scan/new_olap_scanner.cpp
index 09103da9481..ac0701f21fa 100644
--- a/be/src/vec/exec/scan/new_olap_scanner.cpp
+++ b/be/src/vec/exec/scan/new_olap_scanner.cpp
@@ -568,7 +568,10 @@ void NewOlapScanner::_collect_profile_before_close() {
     COUNTER_UPDATE(Parent->_block_init_timer, stats.block_init_ns);            
                 \
     COUNTER_UPDATE(Parent->_block_init_seek_timer, stats.block_init_seek_ns);  
                 \
     COUNTER_UPDATE(Parent->_block_init_seek_counter, 
stats.block_init_seek_num);                \
-    COUNTER_UPDATE(Parent->_segment_generate_row_range_timer, 
stats.generate_row_ranges_ns);    \
+    COUNTER_UPDATE(Parent->_segment_generate_row_range_by_keys_timer,          
                 \
+                   stats.generate_row_ranges_by_keys_ns);                      
                 \
+    
COUNTER_UPDATE(Parent->_segment_generate_row_range_by_column_conditions_timer,  
            \
+                   stats.generate_row_ranges_by_column_conditions_ns);         
                 \
     COUNTER_UPDATE(Parent->_segment_generate_row_range_by_bf_timer,            
                 \
                    stats.generate_row_ranges_by_bf_ns);                        
                 \
     COUNTER_UPDATE(Parent->_collect_iterator_merge_next_timer,                 
                 \


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to