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

cambyzju pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-1.2-lts by this push:
     new f57627285f7 [fix](timeout) unify query_timeout, use setting from user 
property first (#37626)
f57627285f7 is described below

commit f57627285f796249c680acfb441cad31f9705f2a
Author: Yulei-Yang <yulei.yang0...@gmail.com>
AuthorDate: Tue Jul 16 19:24:07 2024 +0800

    [fix](timeout) unify query_timeout, use setting from user property first 
(#37626)
---
 .../org/apache/doris/mysql/AcceptListener.java     |  2 +-
 .../java/org/apache/doris/qe/ConnectContext.java   | 28 +++++++---------------
 2 files changed, 9 insertions(+), 21 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/mysql/AcceptListener.java 
b/fe/fe-core/src/main/java/org/apache/doris/mysql/AcceptListener.java
index 4f059c7c751..6fec03bc565 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/AcceptListener.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/AcceptListener.java
@@ -78,7 +78,7 @@ public class AcceptListener implements 
ChannelListener<AcceptingChannel<StreamCo
                     }
                     context.setStartTime();
                     context.setUserQueryTimeout(
-                            
context.getEnv().getAuth().getQueryTimeout(context.getQualifiedUser()));
+                            (int) 
context.getEnv().getAuth().getQueryTimeout(context.getQualifiedUser()));
                     ConnectProcessor processor = new ConnectProcessor(context);
                     context.startAcceptQuery(processor);
                 } catch (AfterConnectedException e) {
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 4ebf493bdd1..d709ead10f5 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
@@ -152,10 +152,10 @@ public class ConnectContext {
     // This context is used for SSL connection between server and mysql client.
     private final MysqlSslContext mysqlSslContext = new 
MysqlSslContext(SSL_PROTOCOL);
 
-    private long userQueryTimeout;
-
-    public void setUserQueryTimeout(long queryTimeout) {
-        this.userQueryTimeout = queryTimeout;
+    public void setUserQueryTimeout(int queryTimeout) {
+        if (queryTimeout > 0) {
+            sessionVariable.setQueryTimeoutS(queryTimeout);
+        }
     }
 
     private StatementContext statementContext;
@@ -571,23 +571,11 @@ public class ConnectContext {
                 killConnection = true;
             }
         } else {
-            if (userQueryTimeout > 0) {
-                // user set query_timeout property
-                if (delta > userQueryTimeout * 1000) {
-                    LOG.warn("kill query timeout, remote: {}, query timeout: 
{}",
-                            getMysqlChannel().getRemoteHostPortString(), 
userQueryTimeout);
+            if (delta > sessionVariable.getQueryTimeoutS() * 1000) {
+                LOG.warn("kill query timeout, remote: {}, query timeout: {}",
+                        getMysqlChannel().getRemoteHostPortString(), 
sessionVariable.getQueryTimeoutS());
 
-                    killFlag = true;
-                }
-            } else {
-                // default use session query_timeout
-                if (delta > sessionVariable.getQueryTimeoutS() * 1000) {
-                    LOG.warn("kill query timeout, remote: {}, query timeout: 
{}",
-                            getMysqlChannel().getRemoteHostPortString(), 
sessionVariable.getQueryTimeoutS());
-
-                    // Only kill
-                    killFlag = true;
-                }
+                killFlag = true;
             }
         }
         if (killFlag) {


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

Reply via email to