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

yiguolei pushed a commit to branch branch-4.1
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-4.1 by this push:
     new a45b43e7737 [fix](fe) Report active compute group in processlist 
(#68111) (#68948)
a45b43e7737 is described below

commit a45b43e7737aed20189d3af3d18aa9fdf2be6dc3
Author: deardeng <[email protected]>
AuthorDate: Wed Oct 14 14:41:49 2026 +0800

    [fix](fe) Report active compute group in processlist (#68111) (#68948)
    
    pick from https://github.com/apache/doris/pull/68111
    Problem Summary: due to https://github.com/apache/doris/pull/50783 ,SHOW
    PROCESSLIST read the cached policy-selected compute group directly,
    while query routing gives precedence to the session compute group. When
    a session or per-query hint selected another compute group, the query
    ran there but PROCESSLIST reported the stale cached group. Prefer the
    active session compute group when rendering process rows and retain the
    cached value as the fallback.
    
    SHOW PROCESSLIST now reports the compute group used by the running
    query.
    
    - Test: Unit Test
        - ./run-fe-ut.sh --run org.apache.doris.qe.ConnectContextTest
    - Behavior changed: Yes. The CloudCluster column now reports the active
    session compute group instead of a stale cached value.
    
    (cherry picked from commit 102f69734a26a97ebd88bd0bc90c627173046bb1)
    
    ### What problem does this PR solve?
    
    Issue Number: close #xxx
    
    Related PR: #xxx
    
    Problem Summary:
    
    ### Release note
    
    None
    
    ### Check List (For Author)
    
    - Test <!-- At least one of them must be included. -->
        - [ ] Regression test
        - [ ] Unit Test
        - [ ] Manual test (add detailed scripts or steps below)
        - [ ] No need to test or manual test. Explain why:
    - [ ] This is a refactor/code format and no logic has been changed.
            - [ ] Previous test can cover this change.
            - [ ] No code files have been changed.
            - [ ] Other reason <!-- Add your reason?  -->
    
    - Behavior changed:
        - [ ] No.
        - [ ] Yes. <!-- Explain the behavior change -->
    
    - Does this need documentation?
        - [ ] No.
    - [ ] Yes. <!-- Add document PR link here. eg:
    https://github.com/apache/doris-website/pull/1214 -->
    
    ### Check List (For Reviewer who merge this PR)
    
    - [ ] Confirm the release note
    - [ ] Confirm test cases
    - [ ] Confirm document
    - [ ] Add branch pick label <!-- Add branch pick label that this PR
    should merge into -->
---
 .../main/java/org/apache/doris/qe/ConnectContext.java  |  8 ++++++--
 .../java/org/apache/doris/qe/ConnectContextTest.java   | 18 ++++++++++++++++++
 2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java 
b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
index e51a0031676..affffdbeddf 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
@@ -1744,10 +1744,14 @@ public class ConnectContext {
             }
 
             row.add(Env.getCurrentEnv().getSelfNode().getHost());
-            if (cloudCluster == null) {
+            String currentCloudCluster = sessionVariable.getCloudCluster();
+            if (Strings.isNullOrEmpty(currentCloudCluster)) {
+                currentCloudCluster = cloudCluster;
+            }
+            if (currentCloudCluster == null) {
                 row.add("NULL");
             } else {
-                row.add(cloudCluster);
+                row.add(currentCloudCluster);
             }
             return row;
         }
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/qe/ConnectContextTest.java 
b/fe/fe-core/src/test/java/org/apache/doris/qe/ConnectContextTest.java
index b626f6acf8a..3bf5588e28e 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/qe/ConnectContextTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/qe/ConnectContextTest.java
@@ -39,6 +39,7 @@ import org.apache.doris.mysql.privilege.Auth;
 import org.apache.doris.mysql.privilege.PrivPredicate;
 import org.apache.doris.qe.QueryState.MysqlStateType;
 import org.apache.doris.system.Backend;
+import org.apache.doris.system.SystemInfoService;
 import org.apache.doris.thrift.TUniqueId;
 import org.apache.doris.transaction.TransactionStatus;
 
@@ -339,6 +340,23 @@ public class ConnectContextTest {
         ctx.cleanup();
     }
 
+    @Test
+    public void testThreadInfoUsesSessionCloudCluster() {
+        Env localEnv = Mockito.mock(Env.class);
+        try (MockedStatic<Env> mockedEnv = Mockito.mockStatic(Env.class)) {
+            mockedEnv.when(Env::getCurrentEnv).thenReturn(localEnv);
+            Mockito.when(localEnv.getSelfNode())
+                    .thenReturn(new SystemInfoService.HostInfo("127.0.0.1", 
9030));
+
+            ConnectContext ctx = new ConnectContext();
+            ctx.cloudCluster = "test";
+            ctx.getSessionVariable().setCloudCluster("test1");
+
+            List<String> row = ctx.toThreadInfo(false).toRow(-1, 0, 
Optional.empty());
+            Assert.assertEquals("test1", row.get(14));
+        }
+    }
+
     @Test
     public void testSleepTimeout() {
         ConnectContext ctx = new ConnectContext();


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

Reply via email to