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

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


The following commit(s) were added to refs/heads/master by this push:
     new 8c40d61e273 Refactor DatabaseConnector (#32448)
8c40d61e273 is described below

commit 8c40d61e273ca9a9d8058c30fd79b65b7509d0c4
Author: Liang Zhang <zhangli...@apache.org>
AuthorDate: Sat Aug 10 01:10:04 2024 +0800

    Refactor DatabaseConnector (#32448)
---
 .../proxy/backend/connector/DatabaseConnector.java         | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
index 8d33905a57f..ed96c09ee2f 100644
--- 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
+++ 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
@@ -238,12 +238,12 @@ public final class DatabaseConnector implements 
DatabaseBackendHandler {
             return new 
UpdateResponseHeader(queryContext.getSqlStatementContext().getSqlStatement());
         }
         proxySQLExecutor.checkExecutePrerequisites(executionContext);
-        List<ExecuteResult> result = 
proxySQLExecutor.execute(executionContext);
-        refreshMetaData(executionContext);
-        Object executeResultSample = result.iterator().next();
+        List<ExecuteResult> executeResults = 
proxySQLExecutor.execute(executionContext);
+        
getMetaDataRefreshEngine().refresh(queryContext.getSqlStatementContext(), 
executionContext.getRouteContext().getRouteUnits());
+        Object executeResultSample = executeResults.iterator().next();
         return executeResultSample instanceof QueryResult
-                ? processExecuteQuery(queryContext.getSqlStatementContext(), 
result.stream().map(QueryResult.class::cast).collect(Collectors.toList()), 
(QueryResult) executeResultSample)
-                : 
processExecuteUpdate(result.stream().map(UpdateResult.class::cast).collect(Collectors.toList()));
+                ? processExecuteQuery(queryContext.getSqlStatementContext(), 
executeResults.stream().map(QueryResult.class::cast).collect(Collectors.toList()),
 (QueryResult) executeResultSample)
+                : 
processExecuteUpdate(executeResults.stream().map(UpdateResult.class::cast).collect(Collectors.toList()));
     }
     
     private ResultSet doExecuteFederation() {
@@ -275,10 +275,6 @@ public final class DatabaseConnector implements 
DatabaseBackendHandler {
         return new QueryResponseHeader(queryHeaders);
     }
     
-    private void refreshMetaData(final ExecutionContext executionContext) 
throws SQLException {
-        
getMetaDataRefreshEngine().refresh(queryContext.getSqlStatementContext(), 
executionContext.getRouteContext().getRouteUnits());
-    }
-    
     private MetaDataRefreshEngine getMetaDataRefreshEngine() {
         return new 
MetaDataRefreshEngine(contextManager.getPersistServiceFacade().getMetaDataManagerPersistService(),
 database, contextManager.getMetaDataContexts().getMetaData().getProps());
     }

Reply via email to