diff --git a/be/src/service/point_query_executor.cpp b/be/src/service/point_query_executor.cpp index 8058e1f1be63024..554ab971cd04558 100644 --- a/be/src/service/point_query_executor.cpp +++ b/be/src/service/point_query_executor.cpp @@ -234,6 +234,11 @@ void RowCache::erase(const RowCacheKey& key) { LRUCachePolicy::erase(encoded_key); } +LookupConnectionCache::CacheValue::~CacheValue() { + SCOPED_ATTACH_TASK(ExecEnv::GetInstance()->point_query_executor_mem_tracker()); + item.reset(); +} + PointQueryExecutor::~PointQueryExecutor() { SCOPED_SWITCH_THREAD_MEM_TRACKER_LIMITER( ExecEnv::GetInstance()->point_query_executor_mem_tracker()); diff --git a/be/src/service/point_query_executor.h b/be/src/service/point_query_executor.h index 7503fd2c102a687..6c6fb28f95a3782 100644 --- a/be/src/service/point_query_executor.h +++ b/be/src/service/point_query_executor.h @@ -265,6 +265,7 @@ class LookupConnectionCache : public LRUCachePolicyTrackingManual { class CacheValue : public LRUCacheValueBase { public: + ~CacheValue() override; std::shared_ptr item; }; };