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

zhaojinchao 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 57a51359761 Fix sonar issue (#26715)
57a51359761 is described below

commit 57a51359761aff9c8de34e8103deeff022649094
Author: Raigor <[email protected]>
AuthorDate: Fri Jun 30 10:57:12 2023 +0800

    Fix sonar issue (#26715)
---
 .../shardingsphere/single/datanode/SingleTableDataNodeLoader.java    | 5 ++++-
 .../distsql/handler/update/LoadSingleTableStatementUpdater.java      | 4 ++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git 
a/kernel/single/core/src/main/java/org/apache/shardingsphere/single/datanode/SingleTableDataNodeLoader.java
 
b/kernel/single/core/src/main/java/org/apache/shardingsphere/single/datanode/SingleTableDataNodeLoader.java
index 43d5c3c5a1e..e921e4e62b7 100644
--- 
a/kernel/single/core/src/main/java/org/apache/shardingsphere/single/datanode/SingleTableDataNodeLoader.java
+++ 
b/kernel/single/core/src/main/java/org/apache/shardingsphere/single/datanode/SingleTableDataNodeLoader.java
@@ -56,13 +56,16 @@ public final class SingleTableDataNodeLoader {
      */
     public static Map<String, Collection<DataNode>> load(final String 
databaseName, final DatabaseType databaseType, final Map<String, DataSource> 
dataSourceMap,
                                                          final 
Collection<ShardingSphereRule> builtRules, final Collection<String> 
configuredTables) {
+        Collection<String> featureRequiredSingleTables = 
SingleTableLoadUtils.getFeatureRequiredSingleTables(builtRules);
+        if (configuredTables.isEmpty() && 
featureRequiredSingleTables.isEmpty()) {
+            return new LinkedHashMap<>();
+        }
         Collection<String> excludedTables = 
SingleTableLoadUtils.getExcludedTables(builtRules);
         Map<String, Collection<DataNode>> actualDataNodes = load(databaseName, 
databaseType, dataSourceMap, excludedTables);
         Collection<String> splitTables = 
SingleTableLoadUtils.splitTableLines(configuredTables);
         if (splitTables.contains(SingleTableConstants.ALL_TABLES) || 
splitTables.contains(SingleTableConstants.ALL_SCHEMA_TABLES)) {
             return actualDataNodes;
         }
-        Collection<String> featureRequiredSingleTables = 
SingleTableLoadUtils.getFeatureRequiredSingleTables(builtRules);
         Map<String, Map<String, Collection<String>>> configuredTableMap = 
getConfiguredTableMap(databaseName, databaseType, splitTables);
         return loadSpecifiedDataNodes(actualDataNodes, 
featureRequiredSingleTables, configuredTableMap);
     }
diff --git 
a/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/update/LoadSingleTableStatementUpdater.java
 
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/update/LoadSingleTableStatementUpdater.java
index 23df71210b5..67416422a82 100644
--- 
a/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/update/LoadSingleTableStatementUpdater.java
+++ 
b/kernel/single/distsql/handler/src/main/java/org/apache/shardingsphere/single/distsql/handler/update/LoadSingleTableStatementUpdater.java
@@ -54,12 +54,12 @@ public final class LoadSingleTableStatementUpdater 
implements RuleDefinitionCrea
     @Override
     public void checkSQLStatement(final ShardingSphereDatabase database, final 
LoadSingleTableStatement sqlStatement, final SingleRuleConfiguration 
currentRuleConfig) {
         String defaultSchemaName = 
DatabaseTypeEngine.getDefaultSchemaName(database.getProtocolType(), 
database.getName());
-        checkTables(database, sqlStatement, currentRuleConfig, 
defaultSchemaName);
+        checkTables(database, sqlStatement, defaultSchemaName);
         checkStorageUnits(database, sqlStatement);
         checkActualTableExist(database, sqlStatement, defaultSchemaName);
     }
     
-    private void checkTables(final ShardingSphereDatabase database, final 
LoadSingleTableStatement sqlStatement, final SingleRuleConfiguration 
currentRuleConfig, final String defaultSchemaName) {
+    private void checkTables(final ShardingSphereDatabase database, final 
LoadSingleTableStatement sqlStatement, final String defaultSchemaName) {
         Optional<SingleRule> currentSingleRule = 
database.getRuleMetaData().findSingleRule(SingleRule.class);
         Collection<String> currentSingleTables = currentSingleRule.isPresent() 
? currentSingleRule.get().getSingleTableDataNodes().keySet() : 
Collections.emptyList();
         Collection<SingleTableSegment> tableSegments = 
sqlStatement.getTables();

Reply via email to