This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 4a1cdfec1bacfa174cbc319c5e5f19236ed7d702 Author: Jibing-Li <[email protected]> AuthorDate: Wed Sep 6 08:53:30 2023 +0800 [fix](statistics)Set default database while forwarding stmt to master. #23938 Set default database while forwarding request to master. Avoid No database selected error. --- fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java | 3 +++ fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java | 1 + gensrc/thrift/FrontendService.thrift | 1 + 3 files changed, 5 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java index 2bdfba3548..73c6debb69 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java @@ -748,6 +748,9 @@ public class ConnectProcessor { if (request.isSetDefaultCatalog()) { ctx.getEnv().changeCatalog(ctx, request.getDefaultCatalog()); } + if (request.isSetDefaultDatabase() && !request.getDefaultDatabase().isEmpty()) { + ctx.getEnv().changeDb(ctx, request.getDefaultDatabase()); + } TUniqueId queryId; // This query id will be set in ctx if (request.isSetQueryId()) { queryId = request.getQueryId(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java index 05fc4e2d21..5c15007ffa 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java @@ -168,6 +168,7 @@ public class MasterOpExecutor { params.setStmtIdx(originStmt.idx); params.setUser(ctx.getQualifiedUser()); params.setDefaultCatalog(ctx.getDefaultCatalog()); + params.setDefaultDatabase(ctx.getDatabase()); params.setDb(ctx.getDatabase()); params.setUserIp(ctx.getRemoteIP()); params.setStmtId(ctx.getStmtId()); diff --git a/gensrc/thrift/FrontendService.thrift b/gensrc/thrift/FrontendService.thrift index 6a005450cc..14bf4ac1ae 100644 --- a/gensrc/thrift/FrontendService.thrift +++ b/gensrc/thrift/FrontendService.thrift @@ -470,6 +470,7 @@ struct TMasterOpRequest { 23: optional i32 clientNodePort 24: optional bool syncJournalOnly // if set to true, this request means to do nothing but just sync max journal id of master 25: optional string defaultCatalog + 26: optional string defaultDatabase } struct TColumnDefinition { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
