diff --git a/be/src/runtime/plan_fragment_executor.cpp b/be/src/runtime/plan_fragment_executor.cpp index 18cfb0d223..0c7c7fb2bd 100644 --- a/be/src/runtime/plan_fragment_executor.cpp +++ b/be/src/runtime/plan_fragment_executor.cpp @@ -65,6 +65,11 @@ PlanFragmentExecutor::~PlanFragmentExecutor() { // } // at this point, the report thread should have been stopped DCHECK(!_report_thread_active); + + // fragment mem tracker needs unregister + if (_mem_tracker.get() != nullptr) { + _mem_tracker->unregister_from_parent(); + } } Status PlanFragmentExecutor::prepare(const TExecPlanFragmentParams& request) {