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();