diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/AutoCloseConnectContext.java b/fe/fe-core/src/main/java/org/apache/doris/qe/AutoCloseConnectContext.java index ffebe97e706548..0c400950c58052 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/AutoCloseConnectContext.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/AutoCloseConnectContext.java @@ -36,6 +36,7 @@ public void call() { @Override public void close() { + connectContext.clear(); ConnectContext.remove(); if (previousContext != null) { previousContext.setThreadLocalInfo(); 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 1b70c5b318bd10..e11f4dce803735 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 @@ -832,6 +832,11 @@ public StmtExecutor getExecutor() { return executor; } + public void clear() { + executor = null; + statementContext = null; + } + public PlSqlOperation getPlSqlOperation() { if (plSqlOperation == null) { plSqlOperation = new PlSqlOperation(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/MysqlConnectProcessor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/MysqlConnectProcessor.java index 0f3de945f8508b..9c177f341b07f2 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/MysqlConnectProcessor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/MysqlConnectProcessor.java @@ -283,6 +283,8 @@ public void processOnce() throws IOException { finalizeCommand(); ctx.setCommand(MysqlCommand.COM_SLEEP); + ctx.clear(); + executor = null; } public void loop() {