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 c747714c1864e08311bc3c76e3537453615c0cae Author: Xinyi Zou <zouxiny...@gmail.com> AuthorDate: Fri Apr 19 14:41:22 2024 +0800 [fix](memory) Fix ExecEnv destroy memory tracking (#33781) disable memory tracking when ExecEnv destroy. fix memory tracker label convert to query id --- be/src/runtime/memory/mem_tracker_limiter.h | 4 ++-- be/src/runtime/thread_context.h | 13 +++++++------ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/be/src/runtime/memory/mem_tracker_limiter.h b/be/src/runtime/memory/mem_tracker_limiter.h index fcb319a8d77..240170ea881 100644 --- a/be/src/runtime/memory/mem_tracker_limiter.h +++ b/be/src/runtime/memory/mem_tracker_limiter.h @@ -217,8 +217,8 @@ public: // only for Type::QUERY or Type::LOAD. static TUniqueId label_to_queryid(const std::string& label) { - if (label.rfind("Query#Id=", 0) != 0 && label.rfind("Load#Id=", 0) != 0) { - return TUniqueId(); + if (label.find("#Id=") == std::string::npos) { + return {}; } auto queryid = split(label, "#Id=")[1]; TUniqueId querytid; diff --git a/be/src/runtime/thread_context.h b/be/src/runtime/thread_context.h index 09721fb5d04..6920dfabe60 100644 --- a/be/src/runtime/thread_context.h +++ b/be/src/runtime/thread_context.h @@ -79,13 +79,14 @@ #define SCOPED_CONSUME_MEM_TRACKER_BY_HOOK(mem_tracker) \ auto VARNAME_LINENUM(add_mem_consumer) = doris::AddThreadMemTrackerConsumerByHook(mem_tracker) -#define ORPHAN_TRACKER_CHECK() \ - DCHECK(!doris::config::enable_memory_orphan_check || \ - doris::thread_context()->thread_mem_tracker()->label() != "Orphan") \ +#define ORPHAN_TRACKER_CHECK() \ + DCHECK(doris::k_doris_exit || !doris::config::enable_memory_orphan_check || \ + doris::thread_context()->thread_mem_tracker()->label() != "Orphan") \ << doris::memory_orphan_check_msg -#define MEMORY_ORPHAN_CHECK() \ - DCHECK(!doris::config::enable_memory_orphan_check) << doris::memory_orphan_check_msg; +#define MEMORY_ORPHAN_CHECK() \ + DCHECK(doris::k_doris_exit || !doris::config::enable_memory_orphan_check) \ + << doris::memory_orphan_check_msg; #else #define SCOPED_MEM_COUNT_BY_HOOK(scope_mem) (void)0 #define SCOPED_CONSUME_MEM_TRACKER_BY_HOOK(mem_tracker) (void)0 @@ -200,7 +201,7 @@ public: void consume_memory(const int64_t size) const { #ifdef USE_MEM_TRACKER - DCHECK(!doris::config::enable_memory_orphan_check || + DCHECK(doris::k_doris_exit || !doris::config::enable_memory_orphan_check || thread_mem_tracker()->label() != "Orphan") << doris::memory_orphan_check_msg; #endif --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org