This is an automated email from the ASF dual-hosted git repository. dataroaring pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push: new f015d9a349e [fix](load) fix metrics memtable_flush_duration_us (#47607) f015d9a349e is described below commit f015d9a349ea1421ee0b10af3861dda350bf8b89 Author: Kaijie Chen <chenkai...@selectdb.com> AuthorDate: Thu Feb 13 10:18:34 2025 +0800 [fix](load) fix metrics memtable_flush_duration_us (#47607) Fix the metrics `memtable_flush_duration_us` caused by incorrect usage of `SCOPED_RAW_TIMER`. --- be/src/olap/memtable_flush_executor.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/be/src/olap/memtable_flush_executor.cpp b/be/src/olap/memtable_flush_executor.cpp index e2c20b327d2..504bcc631c9 100644 --- a/be/src/olap/memtable_flush_executor.cpp +++ b/be/src/olap/memtable_flush_executor.cpp @@ -142,18 +142,16 @@ Status FlushToken::_do_flush_memtable(MemTable* memtable, int32_t segment_id, in << ", memsize: " << memtable->memory_usage() << ", rows: " << memtable->stat().raw_rows; memtable->update_mem_type(MemType::FLUSH); - int64_t duration_ns; - SCOPED_RAW_TIMER(&duration_ns); - SCOPED_ATTACH_TASK(memtable->resource_ctx()); - signal::set_signal_task_id(_rowset_writer->load_id()); - signal::tablet_id = memtable->tablet_id(); + int64_t duration_ns = 0; { + SCOPED_RAW_TIMER(&duration_ns); + SCOPED_ATTACH_TASK(memtable->resource_ctx()); SCOPED_CONSUME_MEM_TRACKER(memtable->mem_tracker()); std::unique_ptr<vectorized::Block> block; RETURN_IF_ERROR(memtable->to_block(&block)); RETURN_IF_ERROR(_rowset_writer->flush_memtable(block.get(), segment_id, flush_size)); + memtable->set_flush_success(); } - memtable->set_flush_success(); _memtable_stat += memtable->stat(); DorisMetrics::instance()->memtable_flush_total->increment(1); DorisMetrics::instance()->memtable_flush_duration_us->increment(duration_ns / 1000); @@ -164,6 +162,8 @@ Status FlushToken::_do_flush_memtable(MemTable* memtable, int32_t segment_id, in void FlushToken::_flush_memtable(std::shared_ptr<MemTable> memtable_ptr, int32_t segment_id, int64_t submit_task_time) { + signal::set_signal_task_id(_rowset_writer->load_id()); + signal::tablet_id = memtable_ptr->tablet_id(); Defer defer {[&]() { std::lock_guard<std::mutex> lock(_mutex); _stats.flush_running_count--; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org