From cb4171c32772b34249ece240133aa7cc69b4a5fa Mon Sep 17 00:00:00 2001 From: nroskill Date: Fri, 13 Aug 2021 10:22:44 +0800 Subject: [PATCH] fix trace_id memory leak --- deps/oblib/src/lib/profile/ob_trace_id.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/deps/oblib/src/lib/profile/ob_trace_id.h b/deps/oblib/src/lib/profile/ob_trace_id.h index 040210df5..118f80505 100644 --- a/deps/oblib/src/lib/profile/ob_trace_id.h +++ b/deps/oblib/src/lib/profile/ob_trace_id.h @@ -199,11 +199,8 @@ struct ObCurTraceId { inline static TraceId* get_trace_id() { - static RLOCAL(TraceId*, TRACE_ID); - if (OB_UNLIKELY(TRACE_ID == nullptr)) { - TRACE_ID = new (std::nothrow) TraceId(); - } - return TRACE_ID; + static thread_local TraceId TRACE_ID; + return &TRACE_ID; } inline static void mark_user_request()