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 <[email protected]>
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: [email protected]
For additional commands, e-mail: [email protected]