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 956138da5c2 [enhancement](blacklist) ignore shutdown message to avoid 
add the backend to blacklist (#45875)
956138da5c2 is described below

commit 956138da5c2b84040bf393f026c94cf2a6c65d26
Author: yiguolei <guo...@selectdb.com>
AuthorDate: Tue Dec 24 19:03:51 2024 +0800

    [enhancement](blacklist) ignore shutdown message to avoid add the backend 
to blacklist (#45875)
    
    ### What problem does this PR solve?
    
    1. If one request failed to send fragment to BE then it will call
    removeProxy;
    2. removeProxy will call shutdown and shutdown will cancel all requests
    related with this client.
    3. Other request will get exception when receive data from be and will
    add this be to blacklist.
    
    Should avoid this scenario.
    
    None
---
 fe/fe-core/src/main/java/org/apache/doris/qe/ResultReceiver.java | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ResultReceiver.java 
b/fe/fe-core/src/main/java/org/apache/doris/qe/ResultReceiver.java
index 43ad573bf79..9d234ae9e69 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/ResultReceiver.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ResultReceiver.java
@@ -179,7 +179,10 @@ public class ResultReceiver {
                 status.updateStatus(TStatusCode.TIMEOUT, e.getMessage());
             } else {
                 status.updateStatus(TStatusCode.THRIFT_RPC_ERROR, 
e.getMessage());
-                SimpleScheduler.addToBlacklist(backendId, e.getMessage());
+                // Shutdown maybe called by other request, should ignore this 
case.
+                if (!e.getMessage().contains("shutdown")) {
+                    SimpleScheduler.addToBlacklist(backendId, e.getMessage());
+                }
             }
         } catch (TimeoutException e) {
             LOG.warn("fetch result timeout, finstId={}", 
DebugUtil.printId(finstId), e);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to