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

tuichenchuxin 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 575f7778338 Fix sharding index reviser not return default indexname 
(#28434)
575f7778338 is described below

commit 575f777833825ca2a9bf04bc648359be3b30d08e
Author: zhaojinchao <[email protected]>
AuthorDate: Thu Sep 14 18:14:56 2023 +0800

    Fix sharding index reviser not return default indexname (#28434)
---
 .../metadata/reviser/index/ShardingIndexReviser.java      | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git 
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/reviser/index/ShardingIndexReviser.java
 
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/reviser/index/ShardingIndexReviser.java
index 86e9c2941e7..00c6b9e86b3 100644
--- 
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/reviser/index/ShardingIndexReviser.java
+++ 
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/reviser/index/ShardingIndexReviser.java
@@ -37,19 +37,16 @@ public final class ShardingIndexReviser implements 
IndexReviser<ShardingRule> {
     @Override
     public Optional<IndexMetaData> revise(final String tableName, final 
IndexMetaData originalMetaData, final ShardingRule rule) {
         for (DataNode each : tableRule.getActualDataNodes()) {
-            Optional<String> logicIndexName = 
getLogicIndex(originalMetaData.getName(), each.getTableName());
-            if (logicIndexName.isPresent()) {
-                IndexMetaData result = new IndexMetaData(logicIndexName.get());
-                result.getColumns().addAll(originalMetaData.getColumns());
-                result.setUnique(originalMetaData.isUnique());
-                return Optional.of(result);
-            }
+            IndexMetaData result = new 
IndexMetaData(getLogicIndex(originalMetaData.getName(), each.getTableName()));
+            result.getColumns().addAll(originalMetaData.getColumns());
+            result.setUnique(originalMetaData.isUnique());
+            return Optional.of(result);
         }
         return Optional.empty();
     }
     
-    private Optional<String> getLogicIndex(final String actualIndexName, final 
String actualTableName) {
+    private String getLogicIndex(final String actualIndexName, final String 
actualTableName) {
         String indexNameSuffix = "_" + actualTableName;
-        return actualIndexName.endsWith(indexNameSuffix) ? 
Optional.of(actualIndexName.replace(indexNameSuffix, "")) : Optional.empty();
+        return actualIndexName.endsWith(indexNameSuffix) ? 
actualIndexName.replace(indexNameSuffix, "") : actualIndexName;
     }
 }

Reply via email to