You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2023/12/06 07:38:49 UTC

(shardingsphere) branch master updated: Minor refactor in InsertClauseShardingConditionEngine (#29304)

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 885c439f33a Minor refactor in InsertClauseShardingConditionEngine (#29304)
885c439f33a is described below

commit 885c439f33a887aa758481874bb1cacf11b2a63d
Author: Zhengqiang Duan <du...@apache.org>
AuthorDate: Wed Dec 6 15:38:41 2023 +0800

    Minor refactor in InsertClauseShardingConditionEngine (#29304)
---
 .../condition/engine/InsertClauseShardingConditionEngine.java     | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngine.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngine.java
index cc5ee932804..6d47ad1bf73 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngine.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/route/engine/condition/engine/InsertClauseShardingConditionEngine.java
@@ -172,10 +172,10 @@ public final class InsertClauseShardingConditionEngine {
         Optional<GeneratedKeyContext> generatedKey = sqlStatementContext.getGeneratedKeyContext();
         String tableName = sqlStatementContext.getSqlStatement().getTable().getTableName().getIdentifier().getValue();
         if (generatedKey.isPresent() && generatedKey.get().isGenerated() && shardingRule.findTableRule(tableName).isPresent()) {
-            String schemaName =
-                    sqlStatementContext.getTablesContext().getSchemaName().orElseGet(() -> new DatabaseTypeRegistry(sqlStatementContext.getDatabaseType()).getDefaultSchemaName(database.getName()));
-            generatedKey.get().getGeneratedValues()
-                    .addAll(shardingRule.generateKeys(new KeyGenerateContext(database.getName(), schemaName, tableName, generatedKey.get().getColumnName()), sqlStatementContext.getValueListCount()));
+            String schemaName = sqlStatementContext.getTablesContext().getSchemaName()
+                    .orElseGet(() -> new DatabaseTypeRegistry(sqlStatementContext.getDatabaseType()).getDefaultSchemaName(database.getName()));
+            KeyGenerateContext keyGenerateContext = new KeyGenerateContext(database.getName(), schemaName, tableName, generatedKey.get().getColumnName());
+            generatedKey.get().getGeneratedValues().addAll(shardingRule.generateKeys(keyGenerateContext, sqlStatementContext.getValueListCount()));
             generatedKey.get().setSupportAutoIncrement(shardingRule.isSupportAutoIncrement(tableName));
             if (shardingRule.findShardingColumn(generatedKey.get().getColumnName(), tableName).isPresent()) {
                 appendGeneratedKeyCondition(generatedKey.get(), tableName, shardingConditions);