This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 69fc8cf06d2ec16cb43ba297156ea058a6bd0ba3 Author: Xinyi Zou <zouxiny...@gmail.com> AuthorDate: Thu Apr 11 11:22:39 2024 +0800 [branch-2.1](memory) Fix rowid storage reader memory tracker (#33521) fix: F20240411 10:26:06.693233 1368925 thread_context.h:293] __builtin_unreachable, If you crash here, it means that SCOPED_ATTACH_TASK and SCOPED_SWITCH_THREAD_MEM_TRACKER_LIMITER are not used correctly. starting position of each thread is expected to use SCOPED_ATTACH_TASK to bind a MemTrackerLimiter belonging to Query/Load/Compaction/Other Tasks, otherwise memory alloc using Doris Allocator in the thread will crash. If you want to switch MemTrackerLimiter during thread execution, please [...] *** Check failure stack trace: *** @ 0x562d9b5aa6a6 google::LogMessage::SendToLog() @ 0x562d9b5a70f0 google::LogMessage::Flush() @ 0x562d9b5aaee9 google::LogMessageFatal::~LogMessageFatal() @ 0x562d7ebd1b7e doris::thread_context() @ 0x562d7ec203b8 Allocator<>::sys_memory_check() @ 0x562d7ec255a3 Allocator<>::memory_check() @ 0x562d7ec274a1 Allocator<>::alloc_impl() @ 0x562d7ec27227 Allocator<>::alloc() @ 0x562d67a12207 doris::vectorized::PODArrayBase<>::alloc<>() @ 0x562d67a11fde doris::vectorized::PODArrayBase<>::realloc<>() @ 0x562d67a11e26 doris::vectorized::PODArrayBase<>::reserve<>() @ 0x562d77331ee3 doris::vectorized::ColumnVector<>::reserve() @ 0x562d7e64328e doris::vectorized::ColumnNullable::reserve() @ 0x562d7ec79a84 doris::vectorized::Block::Block() @ 0x562d6b86b81b doris::PInternalServiceImpl::_multi_get() @ 0x562d6b8a4a07 doris::PInternalServiceImpl::multiget_data()::$_0::operator()() --- be/src/service/internal_service.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/be/src/service/internal_service.cpp b/be/src/service/internal_service.cpp index ef0521b5219..9eeeca68db6 100644 --- a/be/src/service/internal_service.cpp +++ b/be/src/service/internal_service.cpp @@ -2045,6 +2045,7 @@ void PInternalServiceImpl::multiget_data(google::protobuf::RpcController* contro watch.start(); brpc::ClosureGuard closure_guard(done); response->mutable_status()->set_status_code(0); + SCOPED_ATTACH_TASK(ExecEnv::GetInstance()->rowid_storage_reader_tracker()); Status st = _multi_get(*request, response); st.to_protobuf(response->mutable_status()); LOG(INFO) << "multiget_data finished, cost(us):" << watch.elapsed_time() / 1000; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org