This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.1 by this push: new c033c71aedb [enhancement](cancel) add cancel query ability on be c033c71aedb is described below commit c033c71aedb18b8283cb6879f46fdc1f636346de Author: yiguolei <yiguo...@gmail.com> AuthorDate: Mon Jun 3 11:43:57 2024 +0800 [enhancement](cancel) add cancel query ability on be --- be/src/service/internal_service.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/be/src/service/internal_service.cpp b/be/src/service/internal_service.cpp index 6d2f76e4c23..f9f788a1184 100644 --- a/be/src/service/internal_service.cpp +++ b/be/src/service/internal_service.cpp @@ -582,7 +582,23 @@ void PInternalServiceImpl::cancel_plan_fragment(google::protobuf::RpcController* Status st = Status::OK(); const bool has_cancel_reason = request->has_cancel_reason(); - if (request->has_fragment_id()) { + // KILL QUERY need send query directly to BE ignore the fragmentid or fragment instance id. + // Actully, not need check fragmentid, but should keep stable on 2.1, so that only call + // cancel_query when queryid is set and fragment id not set. + if (request->has_query_id() && !request->has_fragment_id()) { + TUniqueId query_id; + query_id.__set_hi(request->query_id().hi()); + query_id.__set_lo(request->query_id().lo()); + LOG(INFO) << fmt::format( + "Cancel query {}, reason: {}", print_id(query_id), + has_cancel_reason ? PPlanFragmentCancelReason_Name(request->cancel_reason()) + : "INTERNAL_ERROR"); + _exec_env->fragment_mgr()->cancel_query( + query_id, + has_cancel_reason ? request->cancel_reason() + : PPlanFragmentCancelReason::INTERNAL_ERROR, + "cancel query from FE"); + } else if (request->has_fragment_id()) { TUniqueId query_id; query_id.__set_hi(request->query_id().hi()); query_id.__set_lo(request->query_id().lo()); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org