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 3bde531cfff Use CaseInsensitiveMap to replace LinkedHashMap in 
TableNamesMapper (#29434)
3bde531cfff is described below

commit 3bde531cffff071b3dcc81fcdb014514354545fc
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Mon Dec 18 17:05:01 2023 +0800

    Use CaseInsensitiveMap to replace LinkedHashMap in TableNamesMapper (#29434)
    
    * Use CaseInsensitiveMap to replace LinkedHashMap in TableNamesMapper
    
    * fix unit test
---
 .../apache/shardingsphere/sharding/rule/ShardingRuleTest.java |  2 +-
 .../infra/rule/identifier/type/TableNamesMapper.java          | 11 ++++++-----
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
index 26cf8bd1f63..af2001b94a6 100644
--- 
a/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
+++ 
b/features/sharding/core/src/test/java/org/apache/shardingsphere/sharding/rule/ShardingRuleTest.java
@@ -444,7 +444,7 @@ class ShardingRuleTest {
     
     @Test
     void assertGetTables() {
-        assertThat(new 
LinkedList<>(createMaximumShardingRule().getLogicTableMapper().getTableNames()),
 is(Arrays.asList("LOGIC_TABLE", "SUB_LOGIC_TABLE")));
+        assertThat(new 
LinkedList<>(createMaximumShardingRule().getLogicTableMapper().getTableNames()),
 is(Arrays.asList("SUB_LOGIC_TABLE", "LOGIC_TABLE")));
     }
     
     @Test
diff --git 
a/infra/common/src/main/java/org/apache/shardingsphere/infra/rule/identifier/type/TableNamesMapper.java
 
b/infra/common/src/main/java/org/apache/shardingsphere/infra/rule/identifier/type/TableNamesMapper.java
index 27db026e6f2..808a589b76c 100644
--- 
a/infra/common/src/main/java/org/apache/shardingsphere/infra/rule/identifier/type/TableNamesMapper.java
+++ 
b/infra/common/src/main/java/org/apache/shardingsphere/infra/rule/identifier/type/TableNamesMapper.java
@@ -17,8 +17,9 @@
 
 package org.apache.shardingsphere.infra.rule.identifier.type;
 
+import org.apache.commons.collections4.map.CaseInsensitiveMap;
+
 import java.util.Collection;
-import java.util.LinkedHashMap;
 import java.util.Map;
 
 /**
@@ -26,7 +27,7 @@ import java.util.Map;
  */
 public final class TableNamesMapper {
     
-    private final Map<String, String> lowerCaseTableNames = new 
LinkedHashMap<>();
+    private final Map<String, String> lowerCaseTableNames = new 
CaseInsensitiveMap<>();
     
     /**
      * Judge whether contains table or not.
@@ -35,7 +36,7 @@ public final class TableNamesMapper {
      * @return whether contains table or not
      */
     public boolean contains(final String tableName) {
-        return lowerCaseTableNames.containsKey(tableName.toLowerCase());
+        return lowerCaseTableNames.containsKey(tableName);
     }
     
     /**
@@ -53,7 +54,7 @@ public final class TableNamesMapper {
      * @param tableName table name
      */
     public void put(final String tableName) {
-        lowerCaseTableNames.put(tableName.toLowerCase(), tableName);
+        lowerCaseTableNames.put(tableName, tableName);
     }
     
     /**
@@ -62,6 +63,6 @@ public final class TableNamesMapper {
      * @param tableName table name
      */
     public void remove(final String tableName) {
-        lowerCaseTableNames.remove(tableName.toLowerCase());
+        lowerCaseTableNames.remove(tableName);
     }
 }

Reply via email to