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

zykkk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new f786689044 [refactor](TableRowCountAction) Fine-tune sql execution 
code (#23541)
f786689044 is described below

commit f786689044882083f1773c4731ebb2f3dd43d071
Author: Guangdong Liu <[email protected]>
AuthorDate: Wed Aug 30 10:11:30 2023 +0800

    [refactor](TableRowCountAction) Fine-tune sql execution code (#23541)
---
 .../org/apache/doris/httpv2/rest/StmtExecutionAction.java     |  7 ++-----
 .../java/org/apache/doris/httpv2/util/StatementSubmitter.java | 11 +++++------
 2 files changed, 7 insertions(+), 11 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/httpv2/rest/StmtExecutionAction.java
 
b/fe/fe-core/src/main/java/org/apache/doris/httpv2/rest/StmtExecutionAction.java
index 7bfc0eb418..d9e07eb9b3 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/httpv2/rest/StmtExecutionAction.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/httpv2/rest/StmtExecutionAction.java
@@ -113,7 +113,7 @@ public class StmtExecutionAction extends RestBaseController 
{
                 stmtRequestBody.limit);
 
         ConnectContext.get().changeDefaultCatalog(ns);
-        ConnectContext.get().setDatabase(getFullDbName(dbName));
+        ConnectContext.get().setDatabase(fullDbName);
 
         String streamHeader = request.getHeader("X-Doris-Stream");
         boolean isStream = !("false".equalsIgnoreCase(streamHeader));
@@ -176,10 +176,7 @@ public class StmtExecutionAction extends 
RestBaseController {
                     return null;
                 }
                 return ResponseEntityBuilder.ok(resultSet.getResult());
-            } catch (InterruptedException e) {
-                LOG.warn("failed to execute stmt", e);
-                return ResponseEntityBuilder.okWithCommonError("Failed to 
execute sql: " + e.getMessage());
-            } catch (ExecutionException e) {
+            } catch (InterruptedException | ExecutionException e) {
                 LOG.warn("failed to execute stmt", e);
                 return ResponseEntityBuilder.okWithCommonError("Failed to 
execute sql: " + e.getMessage());
             }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/httpv2/util/StatementSubmitter.java 
b/fe/fe-core/src/main/java/org/apache/doris/httpv2/util/StatementSubmitter.java
index 5817f1d252..83c5e075f2 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/httpv2/util/StatementSubmitter.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/httpv2/util/StatementSubmitter.java
@@ -73,7 +73,7 @@ public class StatementSubmitter {
     private static final String JDBC_DRIVER = "org.mariadb.jdbc.Driver";
     private static final String DB_URL_PATTERN = 
"jdbc:mariadb://127.0.0.1:%d/%s";
 
-    private ThreadPoolExecutor executor = 
ThreadPoolManager.newDaemonCacheThreadPool(2, "SQL submitter", true);
+    private final ThreadPoolExecutor executor = 
ThreadPoolManager.newDaemonCacheThreadPool(2, "SQL submitter", true);
 
     public Future<ExecutionResultSet> submit(StmtContext queryCtx) {
         Worker worker = new Worker(ConnectContext.get(), queryCtx);
@@ -81,8 +81,8 @@ public class StatementSubmitter {
     }
 
     private static class Worker implements Callable<ExecutionResultSet> {
-        private ConnectContext ctx;
-        private StmtContext queryCtx;
+        private final ConnectContext ctx;
+        private final StmtContext queryCtx;
 
         public Worker(ConnectContext ctx, StmtContext queryCtx) {
             this.ctx = ctx;
@@ -104,7 +104,7 @@ public class StatementSubmitter {
                     stmt = conn.prepareStatement(
                             queryCtx.stmt, ResultSet.TYPE_FORWARD_ONLY, 
ResultSet.CONCUR_READ_ONLY);
                     // set fetch size to 1 to enable streaming result set to 
avoid OOM.
-                    ((PreparedStatement) stmt).setFetchSize(1000);
+                    stmt.setFetchSize(1000);
                     ResultSet rs = ((PreparedStatement) stmt).executeQuery();
                     if (queryCtx.isStream) {
                         StreamResponseInf streamResponse = new 
JsonStreamResponse(queryCtx.response);
@@ -123,8 +123,7 @@ public class StatementSubmitter {
                         streamResponse.handleDdlAndExport(startTime);
                         return new ExecutionResultSet(null);
                     }
-                    ExecutionResultSet resultSet = 
generateExecStatus(startTime);
-                    return resultSet;
+                    return generateExecStatus(startTime);
                 } else {
                     throw new Exception("Unsupported statement type");
                 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to