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

duanzhengqiang 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 677749f1df9 Copy value expressions when creating an insert value 
(#32729)
677749f1df9 is described below

commit 677749f1df92587db308eab0dc2daeee0a1d24dc
Author: ZhangCheng <[email protected]>
AuthorDate: Fri Aug 30 16:05:25 2024 +0800

    Copy value expressions when creating an insert value (#32729)
---
 .../token/generator/insert/EncryptInsertValuesTokenGenerator.java      | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git 
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/insert/EncryptInsertValuesTokenGenerator.java
 
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/insert/EncryptInsertValuesTokenGenerator.java
index 18179b82e56..362f00e710b 100644
--- 
a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/insert/EncryptInsertValuesTokenGenerator.java
+++ 
b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/insert/EncryptInsertValuesTokenGenerator.java
@@ -48,6 +48,7 @@ import 
org.apache.shardingsphere.sql.parser.statement.core.value.identifier.Iden
 
 import java.util.Collection;
 import java.util.Iterator;
+import java.util.LinkedList;
 import java.util.List;
 import java.util.Optional;
 
@@ -108,7 +109,7 @@ public final class EncryptInsertValuesTokenGenerator 
implements OptionalSQLToken
         String schemaName = 
insertStatementContext.getTablesContext().getSchemaName()
                 .orElseGet(() -> new 
DatabaseTypeRegistry(insertStatementContext.getDatabaseType()).getDefaultSchemaName(databaseName));
         for (InsertValueContext each : 
insertStatementContext.getInsertValueContexts()) {
-            InsertValue insertValueToken = new 
InsertValue(each.getValueExpressions());
+            InsertValue insertValueToken = new InsertValue(new 
LinkedList<>(each.getValueExpressions()));
             encryptToken(insertValueToken, schemaName, encryptTable, 
insertStatementContext, each);
             result.getInsertValues().add(insertValueToken);
         }

Reply via email to