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 15149f04a3e Avoid using CopyOnWriteArrayList in DatabaseConnector 
(#26536)
15149f04a3e is described below

commit 15149f04a3e49efe047b705736656b52cd840f47
Author: 吴伟杰 <wuwei...@apache.org>
AuthorDate: Sun Jun 25 15:22:47 2023 +0800

    Avoid using CopyOnWriteArrayList in DatabaseConnector (#26536)
    
    
https://sonarcloud.io/project/issues?resolved=false&rules=java%3AS2250&id=apache_shardingsphere&open=AYg4ki7rjaR3HNxhP8-6
    
https://sonarcloud.io/project/issues?resolved=false&rules=java%3AS2250&id=apache_shardingsphere&open=AYg4ki7rjaR3HNxhP8-7
---
 .../shardingsphere/proxy/backend/connector/DatabaseConnector.java   | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
index ee3a12740f5..9180650b4bb 100644
--- 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
+++ 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/connector/DatabaseConnector.java
@@ -85,7 +85,7 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
-import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * Database connector.
@@ -94,9 +94,9 @@ public final class DatabaseConnector implements 
DatabaseBackendHandler {
     
     private final ProxySQLExecutor proxySQLExecutor;
     
-    private final Collection<Statement> cachedStatements = new 
CopyOnWriteArrayList<>();
+    private final Collection<Statement> cachedStatements = 
Collections.newSetFromMap(new ConcurrentHashMap<>());
     
-    private final Collection<ResultSet> cachedResultSets = new 
CopyOnWriteArrayList<>();
+    private final Collection<ResultSet> cachedResultSets = 
Collections.newSetFromMap(new ConcurrentHashMap<>());
     
     private final String driverType;
     

Reply via email to