This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 588ba67368f [fix](kill) opt kill query doc (#2371)
588ba67368f is described below

commit 588ba67368f0e9391db970bc3e5edb788717c37a
Author: Mingyu Chen (Rayner) <[email protected]>
AuthorDate: Mon May 26 11:28:51 2025 +0800

    [fix](kill) opt kill query doc (#2371)
    
    ## Versions
    
    - [x] dev
    - [x] 3.0
    - [x] 2.1
    - [ ] 2.0
    
    ## Languages
    
    - [x] Chinese
    - [x] English
    
    ## Docs Checklist
    
    - [x] Checked by AI
    - [ ] Test Cases Built
---
 .../admin-manual/workload-management/kill-query.md | 154 ++++++++++++++------
 .../admin-manual/workload-management/kill-query.md | 157 ++++++++++++++++-----
 .../admin-manual/workload-management/kill-query.md | 157 ++++++++++++++++-----
 .../admin-manual/workload-management/kill-query.md | 157 ++++++++++++++++-----
 .../admin-manual/workload-management/kill-query.md | 154 ++++++++++++++------
 .../admin-manual/workload-management/kill-query.md | 154 ++++++++++++++------
 6 files changed, 696 insertions(+), 237 deletions(-)

diff --git a/docs/admin-manual/workload-management/kill-query.md 
b/docs/admin-manual/workload-management/kill-query.md
index 24959b45f39..7b8701edffc 100644
--- a/docs/admin-manual/workload-management/kill-query.md
+++ b/docs/admin-manual/workload-management/kill-query.md
@@ -24,77 +24,151 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## Retrieve the List of Queries
+You can cancel currently executing operations or disconnect current connection 
sessions using the `KILL` command. This document introduces related operations 
and considerations.
 
-Syntax:
+## Getting Query Identifiers
+
+`KILL` requires a query identifier to cancel the corresponding query request. 
Query identifiers include: Query ID, Connection ID, and Trace ID.
+
+You can obtain query identifiers through the following methods.
 
+### PROCESSLIST
+
+Through the `processlist` system table, you can get all current session 
connections and query operations being executed in the connections. This 
includes the Query ID and Connection ID.
 
 ```sql
-SHOW PROCESSLIST;
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
-This command displays all current connections to the FE and the list of 
queries being executed on each connection. For example:
+- `CurrentConnected`: `Yes` indicates the connection corresponding to the 
current session.
+- `Id`: The unique identifier of the connection, i.e., Connection ID.
+- `QueryId`: The unique identifier of the Query. Displays the Query Id of the 
most recently executed or currently executing SQL command.
 
-```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+Note that by default, `SHOW PROCESSLIST` only displays all session connections 
on the FE node that the current session is connected to, and does not display 
session connections from other FE nodes.
+
+If you want to display session connections from all FE nodes, you need to set 
the following session variable:
+
+```
+SET show_all_fe_connection=true;
 ```
 
+Then execute the `SHOW PROCESSLIST` command again to display session 
connections from all FE nodes.
 
-- Id is the unique identifier for the connection, also known as processlist_id.
-- QueryId is the unique identifier for the query.
+You can also view through the system table in `information_schema`:
+
+```
+SELECT * FROM information_schema.processlist;
+```
 
+By default, `processlist` displays session connections from all FE nodes 
without requiring additional settings.
 
+### TRACE ID
 
-## Kill Query
+> This feature is supported since versions 2.1.11 and 3.0.7.
 
-Syntax:
+By default, the system automatically generates a Query ID for each query. 
Users need to first obtain the Query ID through the `processlist` system table 
before performing a KILL operation.
 
+In addition, users can also customize a Trace ID and perform KILL operations 
using the Trace ID.
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SET session_context = "trace_id:your_trace_id";
 ```
 
-This command is used to terminate a specific query or the query being executed 
on a specific connection. For example:
+Where `your_trace_id` is the user-defined Trace ID. It can be any string but 
cannot contain the `;` symbol.
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+Trace ID is a session-level parameter and only applies to the current session. 
Doris will map subsequent query requests in the current session to this Trace 
ID.
 
-This terminates the query currently running on the connection with Id=55, but 
the connection itself remains active.
+## Kill Requests
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
-```
+The `KILL` statement supports canceling specified query operations as well as 
disconnecting specified session connections.
 
-This terminates the query with QueryId=f02603dc163a4da3-beebbb5d1ced760c, 
which is actually the same query as the one with processlist_id=55.
+Regular users can cancel queries sent by their own user through the `KILL` 
operation. ADMIN users can cancel queries sent by themselves and any other 
users.
 
-## Kill Connection
+### Kill Query
 
 Syntax:
 
-
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-For example:
+`KILL QUERY` is used to cancel a specified running query operation.
+
+- `"query_id"`
 
+       The Query ID obtained through the `processlist` system table. Must be 
wrapped in quotes. For example:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       This operation will attempt to find the Query ID on all FE nodes and 
cancel the corresponding query.
+       
+- `"trace_id"`
+
+       The Trace ID customized through `session_context`. Must be wrapped in 
quotes. For example:
+
+       `KILL QUERY "your_trace_id";`
+       
+       This operation will attempt to find the Trace ID on all FE nodes and 
cancel the corresponding query.
+
+       > This feature is supported since versions 2.1.11 and 3.0.7.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       `KILL QUERY 55;`
+       
+       This operation only applies to session connections on the currently 
connected FE, and will cancel the query currently being executed on the 
corresponding session connection.
+
+### Kill Connection
+
+Killing a connection will disconnect the specified session connection and also 
cancel any query operations being executed on the connection.
+
+Syntax:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-This command disconnects the connection with Id=55, and any query currently 
being executed on this connection will also be canceled.
+The `CONNECTION` keyword can be omitted.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       Connection IDs on different FEs may be the same, but this operation 
only affects the session connection on the currently connected FE.
+
+## Best Practices
+
+1. Implementing query management through custom Trace ID
+
+       Custom Trace IDs allow you to specify unique identifiers for queries in 
advance, making it easier for management system to implement the [Cancel Query] 
function. You can customize Trace IDs in the following ways:
+       
+       - Set `session_context` before each query
+
+               Users generate their own Trace ID. It is recommended to use 
UUID to ensure the uniqueness of the Trace ID.
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - Add Trace ID in the query statement
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       Afterward, management system can cancel running operations at any time 
using the Trace ID.
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/workload-management/kill-query.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/workload-management/kill-query.md
index 8afa1a53040..28c8e85e453 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/workload-management/kill-query.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/admin-manual/workload-management/kill-query.md
@@ -24,73 +24,152 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## 获取查询列表
+可以通过 `KILL` 命令取消当前正在执行的操作或断开当前连接会话。本文档介绍相关操作和注意事项
 
-语法:
+## 获取查询标识
 
-```sql
-SHOW PROCESSLIST;
-```
+`KILL` 需通过查询标识取消对应的查询请求。查询标识包括:查询 ID(Query ID) 、连接 ID(Connection ID)和 Trace ID。
 
-可以显示当前 FE 所有的连接,以及每个连接上正在运行的 Query 的列表,例如:
+可以通过以下方式获取查询标识。
+
+### PROCESSLIST
+
+通过 `processlist` 系统表可以获取当前所有的会话连接,以及连接中正在执行的查询操作。其中包含查询 ID 和连接 ID。
 
 ```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
+- `CurrentConnected`:`Yes` 表示当前会话所对应的连接。 
+- `Id`:连接的唯一标识,即 Connection ID。
+- `QueryId`:Query 的唯一标识。显示最仅执行的、或正在执行的 SQL 命令的 Query Id。
 
-- Id 是连接的唯一标识,也可以称为 processlist_id;
-- QueryId 是 Query 的唯一标识。  
+注意,在默认情况下,`SHOW PROCESSLIST` 仅显示当前会话所连接到的 FE 节点上的所有会话连接,并不会显示其他 FE 节点的会话连接。
 
+如果要显示所有 FE 节点的会话连接,需设置一下会话变量:
 
+```
+SET show_all_fe_connection=true;
+```
 
-## Kill 查询
+然后再执行 `SHOW PROCESSLIST` 命令,即可显示所有 FE 节点的会话连接。
 
-语法:
+也可以通过 `information_schema` 中的系统表查看:
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SELECT * FROM information_schema.processlist;
 ```
 
-用于 Kill 某一个指定的 Query,或者某一个连接上正在运行的 Query,例如:
+`processlist` 默认会显示所有 FE 节点的会话连接,不需要额外进行设置。
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+### TRACE ID
 
-表示 Kill 连接 Id=55 上正在运行的 Query,但是连接仍然有效。
+> 该功能自 2.1.11 和 3.0.7 版本支持。
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
+默认情况下,系统会为每个查询自动生成 Query ID。用户需先通过 `processlist` 系统表获取到 Query ID 后,再进行 KILL 操作。
+
+除此之外,用户还可以自定义 Trace ID,并通过 Trace ID 进行 KILL 操作。
+
+```
+SET session_context = "trace_id:your_trace_id"
 ```
 
-表示 Kill QueryId=f02603dc163a4da3-beebbb5d1ced760c 的 Query,与之前的 
processlist_id=55 实际是同一个 Query。
+其中 `your_trace_id ` 为用户自定义的 Trace ID。可以是任意字符串,但不可以包含 `;` 符号。
 
-## Kill 连接
+Trace ID 是会话级别参数,仅作用于当前会话。Doris 会将之后发生在当前会话中的查询请求映射到这个 Trace ID 上。
+
+## Kill 请求
+
+`KILL` 语句支持通过取消指定的查询操作,也支持断开指定的会话连接。
+
+普通用户可以通过 `KILL` 操作取消掉自身用户发送的查询。ADMIN 用户可以取消自身和任意其他用户发送的查询。 
+
+### Kill 查询
 
 语法:
 
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-例如:
+`KILL QUERY` 用于取消一个指定的正在运行的查询操作。
+
+- `"query_id"`
+
+       通过 `processlist` 系统表获取到的 Query ID。需用引号包裹。如:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       该操作会尝试在所有 FE 节点查找 Query ID 并取消对应的查询。
+       
+- `"trace_id"`
+
+       通过 `session_context` 自定义的 Trace ID。需用引号包裹。如:
+
+       `KILL QUERY "your_trace_id";`
+       
+       该操作会尝试在所有 FE 节点查找 Trace ID 并取消对应的查询。
+
+       > 该功能自 2.1.11 和 3.0.7 版本支持。
+
+- `connection_id`
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       `KILL QUERY 55;`
+       
+       该操作仅作用于当前连接到的 FE 上的会话连接,会取消对应会话连接上正在执行的查询。
+
+### Kill 连接
+
+Kill 连接会断开指定的会话连接,同时也会取消连接上正在执行的查询操作。
+
+语法:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-表示断开 Id=55 这个连接,这个连接上正在执行的 Query 也会被 Cancel。
\ No newline at end of file
+其中 `CONNECTION` 关键词可以省略。
+
+- `connection_id `
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       不同 FE 上的连接 ID 可能相同,但该操作仅作用于当前连接到的 FE 上的会话连接。
+
+## 最佳实践
+
+1. 通过自定义 Trace ID 实现查询管理
+
+       通过自定义 Trace ID 可以预先为查询指定唯一标识,方便管控工具实现【取消查询】的功能。可以通过如下方式自定义 Trace ID:
+       
+       - 每次查询前设置 `session_context`
+
+               用户自行生成 Trace ID。建议使用 UUID 以确保 Trace ID 的唯一性。
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - 在查询语句中添加 Trace ID
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       之后,管控工具可以通过 Trace ID 随时取消正在执行的操作。
+
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/workload-management/kill-query.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/workload-management/kill-query.md
index 8afa1a53040..28c8e85e453 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/workload-management/kill-query.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/workload-management/kill-query.md
@@ -24,73 +24,152 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## 获取查询列表
+可以通过 `KILL` 命令取消当前正在执行的操作或断开当前连接会话。本文档介绍相关操作和注意事项
 
-语法:
+## 获取查询标识
 
-```sql
-SHOW PROCESSLIST;
-```
+`KILL` 需通过查询标识取消对应的查询请求。查询标识包括:查询 ID(Query ID) 、连接 ID(Connection ID)和 Trace ID。
 
-可以显示当前 FE 所有的连接,以及每个连接上正在运行的 Query 的列表,例如:
+可以通过以下方式获取查询标识。
+
+### PROCESSLIST
+
+通过 `processlist` 系统表可以获取当前所有的会话连接,以及连接中正在执行的查询操作。其中包含查询 ID 和连接 ID。
 
 ```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
+- `CurrentConnected`:`Yes` 表示当前会话所对应的连接。 
+- `Id`:连接的唯一标识,即 Connection ID。
+- `QueryId`:Query 的唯一标识。显示最仅执行的、或正在执行的 SQL 命令的 Query Id。
 
-- Id 是连接的唯一标识,也可以称为 processlist_id;
-- QueryId 是 Query 的唯一标识。  
+注意,在默认情况下,`SHOW PROCESSLIST` 仅显示当前会话所连接到的 FE 节点上的所有会话连接,并不会显示其他 FE 节点的会话连接。
 
+如果要显示所有 FE 节点的会话连接,需设置一下会话变量:
 
+```
+SET show_all_fe_connection=true;
+```
 
-## Kill 查询
+然后再执行 `SHOW PROCESSLIST` 命令,即可显示所有 FE 节点的会话连接。
 
-语法:
+也可以通过 `information_schema` 中的系统表查看:
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SELECT * FROM information_schema.processlist;
 ```
 
-用于 Kill 某一个指定的 Query,或者某一个连接上正在运行的 Query,例如:
+`processlist` 默认会显示所有 FE 节点的会话连接,不需要额外进行设置。
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+### TRACE ID
 
-表示 Kill 连接 Id=55 上正在运行的 Query,但是连接仍然有效。
+> 该功能自 2.1.11 和 3.0.7 版本支持。
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
+默认情况下,系统会为每个查询自动生成 Query ID。用户需先通过 `processlist` 系统表获取到 Query ID 后,再进行 KILL 操作。
+
+除此之外,用户还可以自定义 Trace ID,并通过 Trace ID 进行 KILL 操作。
+
+```
+SET session_context = "trace_id:your_trace_id"
 ```
 
-表示 Kill QueryId=f02603dc163a4da3-beebbb5d1ced760c 的 Query,与之前的 
processlist_id=55 实际是同一个 Query。
+其中 `your_trace_id ` 为用户自定义的 Trace ID。可以是任意字符串,但不可以包含 `;` 符号。
 
-## Kill 连接
+Trace ID 是会话级别参数,仅作用于当前会话。Doris 会将之后发生在当前会话中的查询请求映射到这个 Trace ID 上。
+
+## Kill 请求
+
+`KILL` 语句支持通过取消指定的查询操作,也支持断开指定的会话连接。
+
+普通用户可以通过 `KILL` 操作取消掉自身用户发送的查询。ADMIN 用户可以取消自身和任意其他用户发送的查询。 
+
+### Kill 查询
 
 语法:
 
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-例如:
+`KILL QUERY` 用于取消一个指定的正在运行的查询操作。
+
+- `"query_id"`
+
+       通过 `processlist` 系统表获取到的 Query ID。需用引号包裹。如:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       该操作会尝试在所有 FE 节点查找 Query ID 并取消对应的查询。
+       
+- `"trace_id"`
+
+       通过 `session_context` 自定义的 Trace ID。需用引号包裹。如:
+
+       `KILL QUERY "your_trace_id";`
+       
+       该操作会尝试在所有 FE 节点查找 Trace ID 并取消对应的查询。
+
+       > 该功能自 2.1.11 和 3.0.7 版本支持。
+
+- `connection_id`
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       `KILL QUERY 55;`
+       
+       该操作仅作用于当前连接到的 FE 上的会话连接,会取消对应会话连接上正在执行的查询。
+
+### Kill 连接
+
+Kill 连接会断开指定的会话连接,同时也会取消连接上正在执行的查询操作。
+
+语法:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-表示断开 Id=55 这个连接,这个连接上正在执行的 Query 也会被 Cancel。
\ No newline at end of file
+其中 `CONNECTION` 关键词可以省略。
+
+- `connection_id `
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       不同 FE 上的连接 ID 可能相同,但该操作仅作用于当前连接到的 FE 上的会话连接。
+
+## 最佳实践
+
+1. 通过自定义 Trace ID 实现查询管理
+
+       通过自定义 Trace ID 可以预先为查询指定唯一标识,方便管控工具实现【取消查询】的功能。可以通过如下方式自定义 Trace ID:
+       
+       - 每次查询前设置 `session_context`
+
+               用户自行生成 Trace ID。建议使用 UUID 以确保 Trace ID 的唯一性。
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - 在查询语句中添加 Trace ID
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       之后,管控工具可以通过 Trace ID 随时取消正在执行的操作。
+
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/workload-management/kill-query.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/workload-management/kill-query.md
index 8afa1a53040..28c8e85e453 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/workload-management/kill-query.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/workload-management/kill-query.md
@@ -24,73 +24,152 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## 获取查询列表
+可以通过 `KILL` 命令取消当前正在执行的操作或断开当前连接会话。本文档介绍相关操作和注意事项
 
-语法:
+## 获取查询标识
 
-```sql
-SHOW PROCESSLIST;
-```
+`KILL` 需通过查询标识取消对应的查询请求。查询标识包括:查询 ID(Query ID) 、连接 ID(Connection ID)和 Trace ID。
 
-可以显示当前 FE 所有的连接,以及每个连接上正在运行的 Query 的列表,例如:
+可以通过以下方式获取查询标识。
+
+### PROCESSLIST
+
+通过 `processlist` 系统表可以获取当前所有的会话连接,以及连接中正在执行的查询操作。其中包含查询 ID 和连接 ID。
 
 ```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
+- `CurrentConnected`:`Yes` 表示当前会话所对应的连接。 
+- `Id`:连接的唯一标识,即 Connection ID。
+- `QueryId`:Query 的唯一标识。显示最仅执行的、或正在执行的 SQL 命令的 Query Id。
 
-- Id 是连接的唯一标识,也可以称为 processlist_id;
-- QueryId 是 Query 的唯一标识。  
+注意,在默认情况下,`SHOW PROCESSLIST` 仅显示当前会话所连接到的 FE 节点上的所有会话连接,并不会显示其他 FE 节点的会话连接。
 
+如果要显示所有 FE 节点的会话连接,需设置一下会话变量:
 
+```
+SET show_all_fe_connection=true;
+```
 
-## Kill 查询
+然后再执行 `SHOW PROCESSLIST` 命令,即可显示所有 FE 节点的会话连接。
 
-语法:
+也可以通过 `information_schema` 中的系统表查看:
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SELECT * FROM information_schema.processlist;
 ```
 
-用于 Kill 某一个指定的 Query,或者某一个连接上正在运行的 Query,例如:
+`processlist` 默认会显示所有 FE 节点的会话连接,不需要额外进行设置。
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+### TRACE ID
 
-表示 Kill 连接 Id=55 上正在运行的 Query,但是连接仍然有效。
+> 该功能自 2.1.11 和 3.0.7 版本支持。
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
+默认情况下,系统会为每个查询自动生成 Query ID。用户需先通过 `processlist` 系统表获取到 Query ID 后,再进行 KILL 操作。
+
+除此之外,用户还可以自定义 Trace ID,并通过 Trace ID 进行 KILL 操作。
+
+```
+SET session_context = "trace_id:your_trace_id"
 ```
 
-表示 Kill QueryId=f02603dc163a4da3-beebbb5d1ced760c 的 Query,与之前的 
processlist_id=55 实际是同一个 Query。
+其中 `your_trace_id ` 为用户自定义的 Trace ID。可以是任意字符串,但不可以包含 `;` 符号。
 
-## Kill 连接
+Trace ID 是会话级别参数,仅作用于当前会话。Doris 会将之后发生在当前会话中的查询请求映射到这个 Trace ID 上。
+
+## Kill 请求
+
+`KILL` 语句支持通过取消指定的查询操作,也支持断开指定的会话连接。
+
+普通用户可以通过 `KILL` 操作取消掉自身用户发送的查询。ADMIN 用户可以取消自身和任意其他用户发送的查询。 
+
+### Kill 查询
 
 语法:
 
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-例如:
+`KILL QUERY` 用于取消一个指定的正在运行的查询操作。
+
+- `"query_id"`
+
+       通过 `processlist` 系统表获取到的 Query ID。需用引号包裹。如:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       该操作会尝试在所有 FE 节点查找 Query ID 并取消对应的查询。
+       
+- `"trace_id"`
+
+       通过 `session_context` 自定义的 Trace ID。需用引号包裹。如:
+
+       `KILL QUERY "your_trace_id";`
+       
+       该操作会尝试在所有 FE 节点查找 Trace ID 并取消对应的查询。
+
+       > 该功能自 2.1.11 和 3.0.7 版本支持。
+
+- `connection_id`
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       `KILL QUERY 55;`
+       
+       该操作仅作用于当前连接到的 FE 上的会话连接,会取消对应会话连接上正在执行的查询。
+
+### Kill 连接
+
+Kill 连接会断开指定的会话连接,同时也会取消连接上正在执行的查询操作。
+
+语法:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-表示断开 Id=55 这个连接,这个连接上正在执行的 Query 也会被 Cancel。
\ No newline at end of file
+其中 `CONNECTION` 关键词可以省略。
+
+- `connection_id `
+
+       通过 `processlist` 系统表获取到的 Connection ID。必须是一个大于 0 的整数,不可用引号包裹。如:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       不同 FE 上的连接 ID 可能相同,但该操作仅作用于当前连接到的 FE 上的会话连接。
+
+## 最佳实践
+
+1. 通过自定义 Trace ID 实现查询管理
+
+       通过自定义 Trace ID 可以预先为查询指定唯一标识,方便管控工具实现【取消查询】的功能。可以通过如下方式自定义 Trace ID:
+       
+       - 每次查询前设置 `session_context`
+
+               用户自行生成 Trace ID。建议使用 UUID 以确保 Trace ID 的唯一性。
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - 在查询语句中添加 Trace ID
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       之后,管控工具可以通过 Trace ID 随时取消正在执行的操作。
+
diff --git 
a/versioned_docs/version-2.1/admin-manual/workload-management/kill-query.md 
b/versioned_docs/version-2.1/admin-manual/workload-management/kill-query.md
index 24959b45f39..7b8701edffc 100644
--- a/versioned_docs/version-2.1/admin-manual/workload-management/kill-query.md
+++ b/versioned_docs/version-2.1/admin-manual/workload-management/kill-query.md
@@ -24,77 +24,151 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## Retrieve the List of Queries
+You can cancel currently executing operations or disconnect current connection 
sessions using the `KILL` command. This document introduces related operations 
and considerations.
 
-Syntax:
+## Getting Query Identifiers
+
+`KILL` requires a query identifier to cancel the corresponding query request. 
Query identifiers include: Query ID, Connection ID, and Trace ID.
+
+You can obtain query identifiers through the following methods.
 
+### PROCESSLIST
+
+Through the `processlist` system table, you can get all current session 
connections and query operations being executed in the connections. This 
includes the Query ID and Connection ID.
 
 ```sql
-SHOW PROCESSLIST;
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
-This command displays all current connections to the FE and the list of 
queries being executed on each connection. For example:
+- `CurrentConnected`: `Yes` indicates the connection corresponding to the 
current session.
+- `Id`: The unique identifier of the connection, i.e., Connection ID.
+- `QueryId`: The unique identifier of the Query. Displays the Query Id of the 
most recently executed or currently executing SQL command.
 
-```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+Note that by default, `SHOW PROCESSLIST` only displays all session connections 
on the FE node that the current session is connected to, and does not display 
session connections from other FE nodes.
+
+If you want to display session connections from all FE nodes, you need to set 
the following session variable:
+
+```
+SET show_all_fe_connection=true;
 ```
 
+Then execute the `SHOW PROCESSLIST` command again to display session 
connections from all FE nodes.
 
-- Id is the unique identifier for the connection, also known as processlist_id.
-- QueryId is the unique identifier for the query.
+You can also view through the system table in `information_schema`:
+
+```
+SELECT * FROM information_schema.processlist;
+```
 
+By default, `processlist` displays session connections from all FE nodes 
without requiring additional settings.
 
+### TRACE ID
 
-## Kill Query
+> This feature is supported since versions 2.1.11 and 3.0.7.
 
-Syntax:
+By default, the system automatically generates a Query ID for each query. 
Users need to first obtain the Query ID through the `processlist` system table 
before performing a KILL operation.
 
+In addition, users can also customize a Trace ID and perform KILL operations 
using the Trace ID.
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SET session_context = "trace_id:your_trace_id";
 ```
 
-This command is used to terminate a specific query or the query being executed 
on a specific connection. For example:
+Where `your_trace_id` is the user-defined Trace ID. It can be any string but 
cannot contain the `;` symbol.
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+Trace ID is a session-level parameter and only applies to the current session. 
Doris will map subsequent query requests in the current session to this Trace 
ID.
 
-This terminates the query currently running on the connection with Id=55, but 
the connection itself remains active.
+## Kill Requests
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
-```
+The `KILL` statement supports canceling specified query operations as well as 
disconnecting specified session connections.
 
-This terminates the query with QueryId=f02603dc163a4da3-beebbb5d1ced760c, 
which is actually the same query as the one with processlist_id=55.
+Regular users can cancel queries sent by their own user through the `KILL` 
operation. ADMIN users can cancel queries sent by themselves and any other 
users.
 
-## Kill Connection
+### Kill Query
 
 Syntax:
 
-
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-For example:
+`KILL QUERY` is used to cancel a specified running query operation.
+
+- `"query_id"`
 
+       The Query ID obtained through the `processlist` system table. Must be 
wrapped in quotes. For example:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       This operation will attempt to find the Query ID on all FE nodes and 
cancel the corresponding query.
+       
+- `"trace_id"`
+
+       The Trace ID customized through `session_context`. Must be wrapped in 
quotes. For example:
+
+       `KILL QUERY "your_trace_id";`
+       
+       This operation will attempt to find the Trace ID on all FE nodes and 
cancel the corresponding query.
+
+       > This feature is supported since versions 2.1.11 and 3.0.7.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       `KILL QUERY 55;`
+       
+       This operation only applies to session connections on the currently 
connected FE, and will cancel the query currently being executed on the 
corresponding session connection.
+
+### Kill Connection
+
+Killing a connection will disconnect the specified session connection and also 
cancel any query operations being executed on the connection.
+
+Syntax:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-This command disconnects the connection with Id=55, and any query currently 
being executed on this connection will also be canceled.
+The `CONNECTION` keyword can be omitted.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       Connection IDs on different FEs may be the same, but this operation 
only affects the session connection on the currently connected FE.
+
+## Best Practices
+
+1. Implementing query management through custom Trace ID
+
+       Custom Trace IDs allow you to specify unique identifiers for queries in 
advance, making it easier for management system to implement the [Cancel Query] 
function. You can customize Trace IDs in the following ways:
+       
+       - Set `session_context` before each query
+
+               Users generate their own Trace ID. It is recommended to use 
UUID to ensure the uniqueness of the Trace ID.
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - Add Trace ID in the query statement
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       Afterward, management system can cancel running operations at any time 
using the Trace ID.
diff --git 
a/versioned_docs/version-3.0/admin-manual/workload-management/kill-query.md 
b/versioned_docs/version-3.0/admin-manual/workload-management/kill-query.md
index 24959b45f39..7b8701edffc 100644
--- a/versioned_docs/version-3.0/admin-manual/workload-management/kill-query.md
+++ b/versioned_docs/version-3.0/admin-manual/workload-management/kill-query.md
@@ -24,77 +24,151 @@ specific language governing permissions and limitations
 under the License.
 -->
 
-## Retrieve the List of Queries
+You can cancel currently executing operations or disconnect current connection 
sessions using the `KILL` command. This document introduces related operations 
and considerations.
 
-Syntax:
+## Getting Query Identifiers
+
+`KILL` requires a query identifier to cancel the corresponding query request. 
Query identifiers include: Query ID, Connection ID, and Trace ID.
+
+You can obtain query identifiers through the following methods.
 
+### PROCESSLIST
+
+Through the `processlist` system table, you can get all current session 
connections and query operations being executed in the connections. This 
includes the Query ID and Connection ID.
 
 ```sql
-SHOW PROCESSLIST;
+mysql> SHOW PROCESSLIST;
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| CurrentConnected | Id   | User | Host                | LoginTime           | 
Catalog  | Db   | Command | Time | State | QueryId                           | 
Info             | FE            | CloudCluster |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
+| No               |    2 | root | 172.20.32.136:54850 | 2025-05-11 10:41:52 | 
internal |      | Query   |    6 | OK    | 12ccf7f95c1c4d2c-b03fa9c652757c15 | 
select sleep(20) | 172.20.32.152 | NULL         |
+| Yes              |    3 | root | 172.20.32.136:54862 | 2025-05-11 10:41:55 | 
internal |      | Query   |    0 | OK    | b710ed990d4144ee-8b15bb53002b7710 | 
show processlist | 172.20.32.152 | NULL         |
+| No               |    1 | root | 172.20.32.136:47964 | 2025-05-11 10:41:54 | 
internal |      | Sleep   |   11 | EOF   | b60daa992bac4fe4-b29466aacce67d27 |  
                | 172.20.32.153 | NULL         |
++------------------+------+------+---------------------+---------------------+----------+------+---------+------+-------+-----------------------------------+------------------+---------------+--------------+
 ```
 
-This command displays all current connections to the FE and the list of 
queries being executed on each connection. For example:
+- `CurrentConnected`: `Yes` indicates the connection corresponding to the 
current session.
+- `Id`: The unique identifier of the connection, i.e., Connection ID.
+- `QueryId`: The unique identifier of the Query. Displays the Query Id of the 
most recently executed or currently executing SQL command.
 
-```sql
-SHOW PROCESSLIST;
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| CurrentConnected | Id   | User | Host               | LoginTime           | 
Catalog  | Db      | Command | Time | State | QueryId                           
| Info                                                                          
        |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-| Yes              |   48 | root | 10.16.xx.xx:44834   | 2023-12-29 16:49:47 | 
internal | test | Query   |    0 | OK    | e6e4ce9567b04859-8eeab8d6b5513e38 | 
SHOW PROCESSLIST                                                                
      |
-|                  |   50 | root | 192.168.xx.xx:52837 | 2023-12-29 16:51:34 | 
internal |      | Sleep   | 1837 | EOF   | deaf13c52b3b4a3b-b25e8254b50ff8cb | 
SELECT @@session.transaction_isolation                                          
      |
-|                  |   51 | root | 192.168.xx.xx:52843 | 2023-12-29 16:51:35 | 
internal |      | Sleep   |  907 | EOF   | 437f219addc0404f-9befe7f6acf9a700 | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - Metadata */ SHOW STATUS            
      |
-|                  |   55 | root | 192.168.xx.xx:55533 | 2023-12-29 17:09:32 | 
internal | test | Sleep   |  271 | EOF   | f02603dc163a4da3-beebbb5d1ced760c | 
/* ApplicationName=DBeaver Ultimate 23.1.3 - SQLEditor <Console> */ SELECT 
DATABASE() |
-|                  |   47 | root | 10.16.xx.xx:35678   | 2023-12-29 16:21:56 | 
internal | test | Sleep   | 3528 | EOF   | f4944c543dc34a99-b0d0f3986c8f1c98 | 
select * from test                                                              
      |
-+------------------+------+------+--------------------+---------------------+----------+---------+---------+------+-------+-----------------------------------+---------------------------------------------------------------------------------------+
-5 rows in set (0.00 sec)
+Note that by default, `SHOW PROCESSLIST` only displays all session connections 
on the FE node that the current session is connected to, and does not display 
session connections from other FE nodes.
+
+If you want to display session connections from all FE nodes, you need to set 
the following session variable:
+
+```
+SET show_all_fe_connection=true;
 ```
 
+Then execute the `SHOW PROCESSLIST` command again to display session 
connections from all FE nodes.
 
-- Id is the unique identifier for the connection, also known as processlist_id.
-- QueryId is the unique identifier for the query.
+You can also view through the system table in `information_schema`:
+
+```
+SELECT * FROM information_schema.processlist;
+```
 
+By default, `processlist` displays session connections from all FE nodes 
without requiring additional settings.
 
+### TRACE ID
 
-## Kill Query
+> This feature is supported since versions 2.1.11 and 3.0.7.
 
-Syntax:
+By default, the system automatically generates a Query ID for each query. 
Users need to first obtain the Query ID through the `processlist` system table 
before performing a KILL operation.
 
+In addition, users can also customize a Trace ID and perform KILL operations 
using the Trace ID.
 
-```sql
-KILL QUERY query_id | processlist_id
+```
+SET session_context = "trace_id:your_trace_id";
 ```
 
-This command is used to terminate a specific query or the query being executed 
on a specific connection. For example:
+Where `your_trace_id` is the user-defined Trace ID. It can be any string but 
cannot contain the `;` symbol.
 
-```sql
-kill query 55;
-Query OK, 0 rows affected (0.01 sec)
-```
+Trace ID is a session-level parameter and only applies to the current session. 
Doris will map subsequent query requests in the current session to this Trace 
ID.
 
-This terminates the query currently running on the connection with Id=55, but 
the connection itself remains active.
+## Kill Requests
 
-```sql
-kill query 'f02603dc163a4da3-beebbb5d1ced760c';
-Query OK, 0 rows affected (0.01 sec)
-```
+The `KILL` statement supports canceling specified query operations as well as 
disconnecting specified session connections.
 
-This terminates the query with QueryId=f02603dc163a4da3-beebbb5d1ced760c, 
which is actually the same query as the one with processlist_id=55.
+Regular users can cancel queries sent by their own user through the `KILL` 
operation. ADMIN users can cancel queries sent by themselves and any other 
users.
 
-## Kill Connection
+### Kill Query
 
 Syntax:
 
-
 ```sql
-KILL CONNECTION processlist_id
+KILL QUERY "query_id" | "trace_id" | connection_id;
 ```
 
-For example:
+`KILL QUERY` is used to cancel a specified running query operation.
+
+- `"query_id"`
 
+       The Query ID obtained through the `processlist` system table. Must be 
wrapped in quotes. For example:
+       
+       `KILL QUERY "d36417cc05ff41ab-9d3afe49be251055";`
+       
+       This operation will attempt to find the Query ID on all FE nodes and 
cancel the corresponding query.
+       
+- `"trace_id"`
+
+       The Trace ID customized through `session_context`. Must be wrapped in 
quotes. For example:
+
+       `KILL QUERY "your_trace_id";`
+       
+       This operation will attempt to find the Trace ID on all FE nodes and 
cancel the corresponding query.
+
+       > This feature is supported since versions 2.1.11 and 3.0.7.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       `KILL QUERY 55;`
+       
+       This operation only applies to session connections on the currently 
connected FE, and will cancel the query currently being executed on the 
corresponding session connection.
+
+### Kill Connection
+
+Killing a connection will disconnect the specified session connection and also 
cancel any query operations being executed on the connection.
+
+Syntax:
 
 ```sql
-kill CONNECTION 55;
-Query OK, 0 rows affected (0.01 sec)
+KILL [CONNECTION] connection_id;
 ```
 
-This command disconnects the connection with Id=55, and any query currently 
being executed on this connection will also be canceled.
+The `CONNECTION` keyword can be omitted.
+
+- `connection_id`
+
+       The Connection ID obtained through the `processlist` system table. Must 
be an integer greater than 0 and cannot be wrapped in quotes. For example:
+
+       ```sql
+       KILL CONNECTION 55;
+       KILL 55;
+       ```
+       
+       Connection IDs on different FEs may be the same, but this operation 
only affects the session connection on the currently connected FE.
+
+## Best Practices
+
+1. Implementing query management through custom Trace ID
+
+       Custom Trace IDs allow you to specify unique identifiers for queries in 
advance, making it easier for management system to implement the [Cancel Query] 
function. You can customize Trace IDs in the following ways:
+       
+       - Set `session_context` before each query
+
+               Users generate their own Trace ID. It is recommended to use 
UUID to ensure the uniqueness of the Trace ID.
+
+               ```sql
+               SET session_context="trace_id:your_trace_id";
+               SELECT * FROM table ...;
+               ```
+               
+       - Add Trace ID in the query statement
+
+               ```sql
+               SELECT /*+SET_VAR(session_context=trace_id:your_trace_id)*/ * 
FROM table ...;
+               ```
+       
+       Afterward, management system can cancel running operations at any time 
using the Trace ID.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to