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

jianglongtao 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 04be0dd2911 Fix check not existed encryptors (#24278)
04be0dd2911 is described below

commit 04be0dd2911fc8c29846414d9e86462c197ec588
Author: ChenJiaHao <[email protected]>
AuthorDate: Tue Feb 21 18:20:47 2023 +0800

    Fix check not existed encryptors (#24278)
---
 .../ral/common/checker/EncryptRuleConfigurationImportChecker.java    | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/common/checker/EncryptRuleConfigurationImportChecker.java
 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/common/checker/EncryptRuleConfigurationImportChecker.java
index 55f9cdb948f..fc70fb0a530 100644
--- 
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/common/checker/EncryptRuleConfigurationImportChecker.java
+++ 
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/common/checker/EncryptRuleConfigurationImportChecker.java
@@ -32,6 +32,7 @@ import 
org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPILoader;
 import java.util.Collection;
 import java.util.LinkedList;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -71,8 +72,8 @@ public final class EncryptRuleConfigurationImportChecker {
         Collection<EncryptColumnRuleConfiguration> columns = new 
LinkedList<>();
         configuration.getTables().forEach(each -> 
columns.addAll(each.getColumns()));
         Collection<String> notExistedEncryptors = 
columns.stream().map(EncryptColumnRuleConfiguration::getEncryptorName).collect(Collectors.toList());
-        
notExistedEncryptors.addAll(columns.stream().map(EncryptColumnRuleConfiguration::getLikeQueryEncryptorName).collect(Collectors.toList()));
-        
notExistedEncryptors.addAll(columns.stream().map(EncryptColumnRuleConfiguration::getAssistedQueryEncryptorName).collect(Collectors.toList()));
+        
notExistedEncryptors.addAll(columns.stream().map(EncryptColumnRuleConfiguration::getLikeQueryEncryptorName).filter(Objects::nonNull).collect(Collectors.toList()));
+        
notExistedEncryptors.addAll(columns.stream().map(EncryptColumnRuleConfiguration::getAssistedQueryEncryptorName).filter(Objects::nonNull).collect(Collectors.toList()));
         Collection<String> encryptors = configuration.getEncryptors().keySet();
         notExistedEncryptors.removeIf(encryptors::contains);
         ShardingSpherePreconditions.checkState(notExistedEncryptors.isEmpty(), 
() -> new MissingRequiredAlgorithmException(databaseName, 
notExistedEncryptors));

Reply via email to