From 5fc79561d7e82e8ccb7e445c82fb8d90feb0ca9f Mon Sep 17 00:00:00 2001 From: HappenLee Date: Sun, 23 Aug 2020 22:41:02 +0800 Subject: [PATCH] [MemTracker][Bug-Fix] Fix core in DECHECK in memory tracker (#4421) Fix DECHECK failed in mem_tracker, issue #4420 --- be/src/runtime/buffered_block_mgr2.cc | 2 +- be/src/runtime/mem_tracker.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/be/src/runtime/buffered_block_mgr2.cc b/be/src/runtime/buffered_block_mgr2.cc index 2bd2629660..3200b61417 100644 --- a/be/src/runtime/buffered_block_mgr2.cc +++ b/be/src/runtime/buffered_block_mgr2.cc @@ -58,7 +58,7 @@ public: : _mgr(mgr), _state(state), _tracker(tracker), - _query_tracker(MemTracker::CreateTracker(-1, "BufferedBlockMgr2", _mgr->_mem_tracker->parent())), + _query_tracker(_mgr->_mem_tracker->parent()), _num_reserved_buffers(num_reserved_buffers), _num_tmp_reserved_buffers(0), _num_pinned_buffers(0) { diff --git a/be/src/runtime/mem_tracker.h b/be/src/runtime/mem_tracker.h index 9d22122540..75426ebfaf 100644 --- a/be/src/runtime/mem_tracker.h +++ b/be/src/runtime/mem_tracker.h @@ -479,7 +479,7 @@ class MemTracker : public std::enable_shared_from_this { DCHECK(consumption_metric_ == nullptr) << "Should not be called on root."; for (MemTracker* tracker : all_trackers_) { if (tracker == end_tracker) return; - DCHECK(!tracker->has_limit()); + DCHECK(!tracker->has_limit()) << tracker->label() << " have limit:" << tracker->limit(); tracker->consumption_->add(bytes); } DCHECK(false) << "end_tracker is not an ancestor";