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 e29cd5eb58e add check when create sharding table reference rule 
(#21952)
e29cd5eb58e is described below

commit e29cd5eb58ed66156838669de71d7e3c40f18da2
Author: jiangML <[email protected]>
AuthorDate: Fri Nov 4 15:55:40 2022 +0800

    add check when create sharding table reference rule (#21952)
    
    * add check when create sharding table reference rule
    
    * optimize code
---
 .../update/CreateShardingTableReferenceRuleStatementUpdater.java        | 2 ++
 1 file changed, 2 insertions(+)

diff --git 
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableReferenceRuleStatementUpdater.java
 
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableReferenceRuleStatementUpdater.java
index 94b871fc8ff..65d21ca48e7 100644
--- 
a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableReferenceRuleStatementUpdater.java
+++ 
b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/CreateShardingTableReferenceRuleStatementUpdater.java
@@ -25,6 +25,7 @@ import 
org.apache.shardingsphere.infra.util.exception.ShardingSpherePrecondition
 import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
 import 
org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
 import 
org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
+import 
org.apache.shardingsphere.sharding.distsql.handler.checker.ShardingTableRuleStatementChecker;
 import 
org.apache.shardingsphere.sharding.distsql.parser.segment.TableReferenceRuleSegment;
 import 
org.apache.shardingsphere.sharding.distsql.parser.statement.CreateShardingTableReferenceRuleStatement;
 
@@ -45,6 +46,7 @@ public final class 
CreateShardingTableReferenceRuleStatementUpdater implements R
         checkCurrentRuleConfiguration(databaseName, currentRuleConfig);
         checkToBeCreatedBindingTables(databaseName, sqlStatement, 
currentRuleConfig);
         checkToBeCreatedDuplicateBindingTables(databaseName, sqlStatement, 
currentRuleConfig);
+        
ShardingTableRuleStatementChecker.checkBindingTableConfiguration(buildToBeCreatedRuleConfiguration(sqlStatement).getBindingTableGroups(),
 currentRuleConfig);
     }
     
     private void checkCurrentRuleConfiguration(final String databaseName, 
final ShardingRuleConfiguration currentRuleConfig) throws 
MissingRequiredRuleException {

Reply via email to