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 <[email protected]>
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);