fix mem tracker limiter (#11376)

This commit is contained in:
Xinyi Zou
2022-08-01 09:44:04 +08:00
committed by GitHub
parent e002b55b01
commit 73d8f5901d
47 changed files with 220 additions and 212 deletions

View File

@ -193,7 +193,8 @@ Status ExecEnv::_init_mem_tracker() {
<< ". Using physical memory instead";
global_memory_limit_bytes = MemInfo::physical_mem();
}
_process_mem_tracker = new MemTrackerLimiter(global_memory_limit_bytes, "Process");
_process_mem_tracker =
std::make_shared<MemTrackerLimiter>(global_memory_limit_bytes, "Process");
thread_context()->_thread_mem_tracker_mgr->init();
thread_context()->_thread_mem_tracker_mgr->set_check_attach(false);
#if defined(USE_MEM_TRACKER) && !defined(__SANITIZE_ADDRESS__) && !defined(ADDRESS_SANITIZER) && \
@ -203,10 +204,12 @@ Status ExecEnv::_init_mem_tracker() {
}
#endif
_query_pool_mem_tracker = new MemTrackerLimiter(-1, "QueryPool", _process_mem_tracker);
_query_pool_mem_tracker =
std::make_shared<MemTrackerLimiter>(-1, "QueryPool", _process_mem_tracker);
REGISTER_HOOK_METRIC(query_mem_consumption,
[this]() { return _query_pool_mem_tracker->consumption(); });
_load_pool_mem_tracker = new MemTrackerLimiter(-1, "LoadPool", _process_mem_tracker);
_load_pool_mem_tracker =
std::make_shared<MemTrackerLimiter>(-1, "LoadPool", _process_mem_tracker);
REGISTER_HOOK_METRIC(load_mem_consumption,
[this]() { return _load_pool_mem_tracker->consumption(); });
LOG(INFO) << "Using global memory limit: "
@ -363,9 +366,6 @@ void ExecEnv::_destroy() {
SAFE_DELETE(_routine_load_task_executor);
SAFE_DELETE(_external_scan_context_mgr);
SAFE_DELETE(_heartbeat_flags);
SAFE_DELETE(_process_mem_tracker);
SAFE_DELETE(_query_pool_mem_tracker);
SAFE_DELETE(_load_pool_mem_tracker);
SAFE_DELETE(_task_pool_mem_tracker_registry);
SAFE_DELETE(_buffer_reservation);