From 0a264cb315a9b72ecee5cd678254af8f7e9090c7 Mon Sep 17 00:00:00 2001 From: zhiqiang Date: Tue, 21 May 2024 17:14:06 +0800 Subject: [PATCH] [fix](FragmentMgr) Should not use operator[] for _query_ctx_map (#35095) --- be/src/runtime/fragment_mgr.cpp | 5 ++++- be/src/service/backend_service.cpp | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/be/src/runtime/fragment_mgr.cpp b/be/src/runtime/fragment_mgr.cpp index c37ef90c618b12..93848b2fb9b3d8 100644 --- a/be/src/runtime/fragment_mgr.cpp +++ b/be/src/runtime/fragment_mgr.cpp @@ -1519,7 +1519,10 @@ Status FragmentMgr::get_realtime_exec_status(const TUniqueId& query_id, { std::lock_guard lock(_lock); - query_context = _query_ctx_map[query_id]; + auto iter = _query_ctx_map.find(query_id); + if (iter != _query_ctx_map.end()) { + query_context = iter->second; + } } if (query_context == nullptr) { diff --git a/be/src/service/backend_service.cpp b/be/src/service/backend_service.cpp index eba047d547614f..296e8b08a5ee0b 100644 --- a/be/src/service/backend_service.cpp +++ b/be/src/service/backend_service.cpp @@ -1168,6 +1168,7 @@ void BaseBackendService::get_realtime_exec_status(TGetRealtimeExecStatusResponse if (!request.__isset.id) { LOG_WARNING("Invalidate argument, id is empty"); response.__set_status(Status::InvalidArgument("id is empty").to_thrift()); + return; } LOG_INFO("Getting realtime exec status of query {}", print_id(request.id));