This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 def4383b2c5 replacing the
org.apache.commons.collections4.map.CaseInsensitiveMap with
com.cedarsoftware.util.CaseInsensitiveMap. (#29432)
def4383b2c5 is described below
commit def4383b2c57d26a028e7f053fbbbfce24f7340e
Author: Cong Hu <[email protected]>
AuthorDate: Tue Dec 19 18:03:42 2023 +0800
replacing the org.apache.commons.collections4.map.CaseInsensitiveMap with
com.cedarsoftware.util.CaseInsensitiveMap. (#29432)
* replacing the org.apache.commons.collections4.map.CaseInsensitiveMap with
com.cedarsoftware.util.CaseInsensitiveMap.
* Fix the issue of Cursor Name being rewritten depending on the order of
logicAndActualTables.
* Add LICENSE in shardingsphere-proxy-distribution.
---
distribution/proxy/src/main/release-docs/LICENSE | 1 +
.../org/apache/shardingsphere/encrypt/rule/EncryptTable.java | 2 +-
.../java/org/apache/shardingsphere/mask/rule/MaskTable.java | 2 +-
.../sharding/merge/ddl/ShardingDDLResultMerger.java | 2 +-
.../sharding/merge/dql/ShardingDQLResultMerger.java | 2 +-
.../sharding/rewrite/token/pojo/CursorToken.java | 2 +-
.../infra/binder/context/segment/table/TablesContext.java | 10 +++++-----
.../infra/binder/statement/SQLStatementBinderContext.java | 2 +-
.../infra/binder/statement/dml/MergeStatementBinder.java | 2 +-
.../core/metadata/database/datatype/DataTypeLoader.java | 2 +-
.../sql/token/pojo/generic/SubstitutableColumnNameToken.java | 2 +-
.../driver/jdbc/core/resultset/DatabaseMetaDataResultSet.java | 2 +-
.../jdbc/core/resultset/ShardingSphereResultSetUtils.java | 2 +-
.../expression/impl/BinaryOperationExpressionConverter.java | 2 +-
.../expression/impl/UnaryOperationExpressionConverter.java | 2 +-
.../projection/impl/AggregationProjectionConverter.java | 2 +-
.../transaction/xa/XAShardingSphereTransactionManager.java | 2 +-
pom.xml | 10 ++++++++++
.../proxy/backend/hbase/result/query/HBaseGetResultSet.java | 2 +-
19 files changed, 32 insertions(+), 21 deletions(-)
diff --git a/distribution/proxy/src/main/release-docs/LICENSE
b/distribution/proxy/src/main/release-docs/LICENSE
index 3ec175e8aed..4d8651e6f08 100644
--- a/distribution/proxy/src/main/release-docs/LICENSE
+++ b/distribution/proxy/src/main/release-docs/LICENSE
@@ -306,6 +306,7 @@ The text of each license is the standard Apache 2.0 license.
uzaygezen-core 0.2: https://code.google.com/p/uzaygezen, Apache 2.0
zookeeper 3.9.0: https://github.com/apache/zookeeper, Apache 2.0
zookeeper-jute 3.9.0: https://github.com/apache/zookeeper, Apache 2.0
+ java-util 2.4.0: https://github.com/jdereg/java-util, Apache 2.0
========================================================================
Apache 2.0 licenses
diff --git
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rule/EncryptTable.java
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rule/EncryptTable.java
index aae70f8abec..a364e18bd27 100644
---
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rule/EncryptTable.java
+++
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rule/EncryptTable.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.encrypt.rule;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.Getter;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.encrypt.api.config.rule.EncryptColumnRuleConfiguration;
import
org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
import
org.apache.shardingsphere.encrypt.api.encrypt.assisted.AssistedEncryptAlgorithm;
diff --git
a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskTable.java
b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskTable.java
index 3157c8196b4..d65dbe0019b 100644
---
a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskTable.java
+++
b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/rule/MaskTable.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.mask.rule;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import
org.apache.shardingsphere.mask.api.config.rule.MaskColumnRuleConfiguration;
import
org.apache.shardingsphere.mask.api.config.rule.MaskTableRuleConfiguration;
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/ddl/ShardingDDLResultMerger.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/ddl/ShardingDDLResultMerger.java
index 2ebafed58b1..3648d85f81d 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/ddl/ShardingDDLResultMerger.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/ddl/ShardingDDLResultMerger.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.sharding.merge.ddl;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
import
org.apache.shardingsphere.infra.binder.context.statement.ddl.FetchStatementContext;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry;
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
index 62c9081919b..160a5f463bc 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/merge/dql/ShardingDQLResultMerger.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.sharding.merge.dql;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.RequiredArgsConstructor;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.context.segment.select.orderby.OrderByItem;
import
org.apache.shardingsphere.infra.binder.context.segment.select.pagination.PaginationContext;
import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
diff --git
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/rewrite/token/pojo/CursorToken.java
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/rewrite/token/pojo/CursorToken.java
index 5e234a94f99..34f58196900 100644
---
a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/rewrite/token/pojo/CursorToken.java
+++
b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/rewrite/token/pojo/CursorToken.java
@@ -58,7 +58,7 @@ public final class CursorToken extends SQLToken implements
Substitutable, RouteU
private String getCursorValue(final RouteUnit routeUnit) {
Map<String, String> logicAndActualTables =
TokenUtils.getLogicAndActualTableMap(routeUnit, sqlStatementContext,
shardingRule);
- String actualTableName = logicAndActualTables.isEmpty() ? null :
logicAndActualTables.values().iterator().next();
+ String actualTableName =
logicAndActualTables.values().stream().sorted().findFirst().orElse(null);
return Strings.isNullOrEmpty(actualTableName) ? identifier.getValue()
: identifier.getValue() + "_" + actualTableName;
}
}
diff --git
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
index 22298a42820..7f93fb85372 100644
---
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
+++
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
@@ -17,10 +17,11 @@
package org.apache.shardingsphere.infra.binder.context.segment.table;
+import com.cedarsoftware.util.CaseInsensitiveMap;
+import com.cedarsoftware.util.CaseInsensitiveSet;
import com.google.common.base.Preconditions;
import lombok.Getter;
import lombok.ToString;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.context.segment.select.subquery.SubqueryTableContext;
import
org.apache.shardingsphere.infra.binder.context.segment.select.subquery.engine.SubqueryTableContextEngine;
import
org.apache.shardingsphere.infra.binder.context.statement.dml.SelectStatementContext;
@@ -38,7 +39,6 @@ import
org.apache.shardingsphere.sql.parser.sql.common.value.identifier.Identifi
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.Map;
@@ -57,11 +57,11 @@ public final class TablesContext {
private final Collection<SimpleTableSegment> simpleTableSegments = new
LinkedList<>();
@Getter
- private final Collection<String> tableNames = new HashSet<>();
+ private final Collection<String> tableNames = new CaseInsensitiveSet<>();
- private final Collection<String> schemaNames = new HashSet<>();
+ private final Collection<String> schemaNames = new CaseInsensitiveSet<>();
- private final Collection<String> databaseNames = new HashSet<>();
+ private final Collection<String> databaseNames = new
CaseInsensitiveSet<>();
private final Map<String, Collection<SubqueryTableContext>> subqueryTables
= new HashMap<>();
diff --git
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/SQLStatementBinderContext.java
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/SQLStatementBinderContext.java
index 34dafe75eb5..3c2cc5dcfef 100644
---
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/SQLStatementBinderContext.java
+++
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/SQLStatementBinderContext.java
@@ -17,9 +17,9 @@
package org.apache.shardingsphere.infra.binder.statement;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.segment.from.TableSegmentBinderContext;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
diff --git
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dml/MergeStatementBinder.java
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dml/MergeStatementBinder.java
index 1cbbfc18dd0..7346d4b4616 100644
---
a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dml/MergeStatementBinder.java
+++
b/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/statement/dml/MergeStatementBinder.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.infra.binder.statement.dml;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.SneakyThrows;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import org.apache.shardingsphere.infra.binder.enums.SegmentType;
import
org.apache.shardingsphere.infra.binder.segment.expression.ExpressionSegmentBinder;
import
org.apache.shardingsphere.infra.binder.segment.expression.impl.ColumnSegmentBinder;
diff --git
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/metadata/database/datatype/DataTypeLoader.java
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/metadata/database/datatype/DataTypeLoader.java
index 7671e9f6cbd..b327a65c8cb 100644
---
a/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/metadata/database/datatype/DataTypeLoader.java
+++
b/infra/database/core/src/main/java/org/apache/shardingsphere/infra/database/core/metadata/database/datatype/DataTypeLoader.java
@@ -17,7 +17,7 @@
package
org.apache.shardingsphere.infra.database.core.metadata.database.datatype;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import org.apache.shardingsphere.infra.database.core.type.DatabaseTypeRegistry;
diff --git
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/sql/token/pojo/generic/SubstitutableColumnNameToken.java
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/sql/token/pojo/generic/SubstitutableColumnNameToken.java
index d7d8d18fab5..1bc5ffbd1aa 100644
---
a/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/sql/token/pojo/generic/SubstitutableColumnNameToken.java
+++
b/infra/rewrite/src/main/java/org/apache/shardingsphere/infra/rewrite/sql/token/pojo/generic/SubstitutableColumnNameToken.java
@@ -17,9 +17,9 @@
package org.apache.shardingsphere.infra.rewrite.sql.token.pojo.generic;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.EqualsAndHashCode;
import lombok.Getter;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.context.segment.select.projection.Projection;
import
org.apache.shardingsphere.infra.binder.context.segment.select.projection.impl.ColumnProjection;
import
org.apache.shardingsphere.infra.database.core.metadata.database.enums.QuoteCharacter;
diff --git
a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/DatabaseMetaDataResultSet.java
b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/DatabaseMetaDataResultSet.java
index 4bbc4b180f6..5c44c3f0483 100644
---
a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/DatabaseMetaDataResultSet.java
+++
b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/DatabaseMetaDataResultSet.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.driver.jdbc.core.resultset;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.EqualsAndHashCode;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.driver.jdbc.exception.connection.ResultSetClosedException;
import
org.apache.shardingsphere.driver.jdbc.exception.syntax.ColumnIndexOutOfRangeException;
import
org.apache.shardingsphere.driver.jdbc.exception.syntax.ColumnLabelNotFoundException;
diff --git
a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/ShardingSphereResultSetUtils.java
b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/ShardingSphereResultSetUtils.java
index 80bcb1c2442..fa5a3989604 100644
---
a/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/ShardingSphereResultSetUtils.java
+++
b/jdbc/core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/resultset/ShardingSphereResultSetUtils.java
@@ -17,9 +17,9 @@
package org.apache.shardingsphere.driver.jdbc.core.resultset;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.binder.context.segment.select.projection.DerivedColumn;
import
org.apache.shardingsphere.infra.binder.context.segment.select.projection.Projection;
import
org.apache.shardingsphere.infra.binder.context.statement.SQLStatementContext;
diff --git
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/BinaryOperationExpressionConverter.java
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/BinaryOperationExpressionConverter.java
index 5785bfd500e..f9e60349900 100644
---
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/BinaryOperationExpressionConverter.java
+++
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/BinaryOperationExpressionConverter.java
@@ -17,6 +17,7 @@
package
org.apache.shardingsphere.sqlfederation.optimizer.converter.segment.expression.impl;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import com.google.common.base.Preconditions;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -26,7 +27,6 @@ import org.apache.calcite.sql.SqlNodeList;
import org.apache.calcite.sql.SqlOperator;
import org.apache.calcite.sql.fun.SqlStdOperatorTable;
import org.apache.calcite.sql.parser.SqlParserPos;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr.BinaryOperationExpression;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr.simple.LiteralExpressionSegment;
import
org.apache.shardingsphere.sqlfederation.optimizer.converter.operator.common.SQLExtensionOperatorTable;
diff --git
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/UnaryOperationExpressionConverter.java
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/UnaryOperationExpressionConverter.java
index 9110e916aa5..3a3804b61a0 100644
---
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/UnaryOperationExpressionConverter.java
+++
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/expression/impl/UnaryOperationExpressionConverter.java
@@ -17,6 +17,7 @@
package
org.apache.shardingsphere.sqlfederation.optimizer.converter.segment.expression.impl;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import com.google.common.base.Preconditions;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -25,7 +26,6 @@ import org.apache.calcite.sql.SqlNode;
import org.apache.calcite.sql.SqlOperator;
import org.apache.calcite.sql.fun.SqlStdOperatorTable;
import org.apache.calcite.sql.parser.SqlParserPos;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr.UnaryOperationExpression;
import
org.apache.shardingsphere.sqlfederation.optimizer.converter.operator.common.SQLExtensionOperatorTable;
import
org.apache.shardingsphere.sqlfederation.optimizer.converter.segment.expression.ExpressionConverter;
diff --git
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/projection/impl/AggregationProjectionConverter.java
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/projection/impl/AggregationProjectionConverter.java
index 8cbda108e78..6d84c9e7443 100644
---
a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/projection/impl/AggregationProjectionConverter.java
+++
b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/converter/segment/projection/impl/AggregationProjectionConverter.java
@@ -17,6 +17,7 @@
package
org.apache.shardingsphere.sqlfederation.optimizer.converter.segment.projection.impl;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import com.google.common.base.Preconditions;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -28,7 +29,6 @@ import org.apache.calcite.sql.SqlNode;
import org.apache.calcite.sql.SqlSelectKeyword;
import org.apache.calcite.sql.fun.SqlStdOperatorTable;
import org.apache.calcite.sql.parser.SqlParserPos;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.expr.ExpressionSegment;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.AggregationDistinctProjectionSegment;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.dml.item.AggregationProjectionSegment;
diff --git
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java
index f43f2e951db..e2fdc5f2e11 100644
---
a/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java
+++
b/kernel/transaction/type/xa/core/src/main/java/org/apache/shardingsphere/transaction/xa/XAShardingSphereTransactionManager.java
@@ -17,8 +17,8 @@
package org.apache.shardingsphere.transaction.xa;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.SneakyThrows;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.exception.core.ShardingSpherePreconditions;
diff --git a/pom.xml b/pom.xml
index fe6de490281..872e0cb6c22 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,6 +74,7 @@
<commons-math3.version>3.6.1</commons-math3.version>
<caffeine.version>2.9.3</caffeine.version>
<transmittable-thread-local.version>2.14.2</transmittable-thread-local.version>
+ <java-util.version>2.4.0</java-util.version>
<antlr4.version>4.10.1</antlr4.version>
<snakeyaml.version>2.2</snakeyaml.version>
@@ -562,6 +563,11 @@
<version>${bytebuddy.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>com.cedarsoftware</groupId>
+ <artifactId>java-util</artifactId>
+ <version>${java-util.version}</version>
+ </dependency>
</dependencies>
</dependencyManagement>
@@ -636,6 +642,10 @@
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
+ <dependency>
+ <groupId>com.cedarsoftware</groupId>
+ <artifactId>java-util</artifactId>
+ </dependency>
</dependencies>
<build>
diff --git
a/proxy/backend/type/hbase/src/main/java/org/apache/shardingsphere/proxy/backend/hbase/result/query/HBaseGetResultSet.java
b/proxy/backend/type/hbase/src/main/java/org/apache/shardingsphere/proxy/backend/hbase/result/query/HBaseGetResultSet.java
index 4c62c7dd121..66baad96227 100644
---
a/proxy/backend/type/hbase/src/main/java/org/apache/shardingsphere/proxy/backend/hbase/result/query/HBaseGetResultSet.java
+++
b/proxy/backend/type/hbase/src/main/java/org/apache/shardingsphere/proxy/backend/hbase/result/query/HBaseGetResultSet.java
@@ -17,9 +17,9 @@
package org.apache.shardingsphere.proxy.backend.hbase.result.query;
+import com.cedarsoftware.util.CaseInsensitiveMap;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.map.CaseInsensitiveMap;
import org.apache.hadoop.hbase.Cell;
import org.apache.hadoop.hbase.CellUtil;
import org.apache.hadoop.hbase.client.Get;