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

hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git


The following commit(s) were added to refs/heads/main by this push:
     new 29c559abb6 Fix#6413  GUI fails to save pipeline when Update Table 
transform Commit Size uses a variable (#6414)
29c559abb6 is described below

commit 29c559abb65569f74f8e91f96b81854891981b77
Author: lance <[email protected]>
AuthorDate: Mon Jan 19 16:40:43 2026 +0800

    Fix#6413  GUI fails to save pipeline when Update Table transform Commit 
Size uses a variable (#6414)
    
    * Fix gUI fails to save pipeline when Update Table transform Commit Size 
uses a variable
    
    Signed-off-by: lance <[email protected]>
    
    * move to single Lombok
    
    ---------
    
    Signed-off-by: lance <[email protected]>
    Co-authored-by: Hans Van Akelyen <[email protected]>
---
 .../hop/pipeline/transforms/update/Update.java     |  16 +--
 .../hop/pipeline/transforms/update/UpdateMeta.java | 113 ++-------------------
 2 files changed, 15 insertions(+), 114 deletions(-)

diff --git 
a/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/Update.java
 
b/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/Update.java
index b863e5a1a7..dd0fda948e 100644
--- 
a/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/Update.java
+++ 
b/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/Update.java
@@ -60,17 +60,17 @@ public class Update extends BaseTransform<UpdateMeta, 
UpdateData> {
     Object[] outputRow = row;
     Object[] add;
 
-    // Create the output row and copy the input values
-    if (!Utils.isEmpty(meta.getIgnoreFlagField())) { // add flag field!
+    // Create the output row and copy the input values. add flag field!
+    if (!Utils.isEmpty(meta.getIgnoreFlagField())) {
 
       outputRow = new Object[data.outputRowMeta.size()];
-      for (int i = 0; i < rowMeta.size(); i++) {
-        outputRow[i] = row[i];
+      if (rowMeta.size() >= 0) {
+        System.arraycopy(row, 0, outputRow, 0, rowMeta.size());
       }
     }
 
     // OK, now do the lookup.
-    // We need the lookupvalues for that.
+    // We need the lookup values for that.
     Object[] lookupRow = new Object[data.lookupParameterRowMeta.size()];
     int lookupIndex = 0;
 
@@ -159,11 +159,11 @@ public class Update extends BaseTransform<UpdateMeta, 
UpdateData> {
       } else {
         for (int i = 0; i < data.valuenrs.length; i++) {
           IValueMeta valueMeta = rowMeta.getValueMeta(data.valuenrs[i]);
-          Object rowvalue = row[data.valuenrs[i]];
+          Object rowValue = row[data.valuenrs[i]];
           IValueMeta returnValueMeta = returnRowMeta.getValueMeta(i);
-          Object retvalue = add[i];
+          Object retValue = add[i];
 
-          if (returnValueMeta.compare(retvalue, valueMeta, rowvalue) != 0) {
+          if (returnValueMeta.compare(retValue, valueMeta, rowValue) != 0) {
             update = true;
           }
         }
diff --git 
a/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/UpdateMeta.java
 
b/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/UpdateMeta.java
index 4031d5c02e..df3d3994a3 100644
--- 
a/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/UpdateMeta.java
+++ 
b/plugins/transforms/update/src/main/java/org/apache/hop/pipeline/transforms/update/UpdateMeta.java
@@ -18,6 +18,8 @@
 package org.apache.hop.pipeline.transforms.update;
 
 import java.util.List;
+import lombok.Getter;
+import lombok.Setter;
 import org.apache.hop.core.CheckResult;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.ICheckResult;
@@ -53,11 +55,11 @@ import org.apache.hop.pipeline.transform.utils.RowMetaUtils;
     keywords = "i18n::UpdateMeta.keyword",
     documentationUrl = "/pipeline/transforms/update.html",
     actionTransformTypes = {ActionTransformType.RDBMS, 
ActionTransformType.OUTPUT})
+@Getter
+@Setter
 public class UpdateMeta extends BaseTransformMeta<Update, UpdateData> {
   private static final Class<?> PKG = UpdateMeta.class;
 
-  private IHopMetadataProvider metadataProvider;
-
   /** Commit size for inserts/updates */
   @HopMetadataProperty(
       key = "commit",
@@ -108,31 +110,6 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
       hopMetadataPropertyType = HopMetadataPropertyType.RDBMS_CONNECTION)
   private String connection;
 
-  public String getConnection() {
-    return connection;
-  }
-
-  public void setConnection(String connection) {
-    this.connection = connection;
-  }
-
-  public UpdateLookupField getLookupField() {
-    return lookupField;
-  }
-
-  public void setLookupField(UpdateLookupField lookupField) {
-    this.lookupField = lookupField;
-  }
-
-  /**
-   * @return Returns the commitSize.
-   * @deprecated use public String getCommitSizeVar() instead
-   */
-  @Deprecated(since = "2.0")
-  public int getCommitSize() {
-    return Integer.parseInt(commitSize);
-  }
-
   /**
    * @return Returns the commitSize.
    */
@@ -151,64 +128,6 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
     return Integer.parseInt(vs.resolve(commitSize));
   }
 
-  /**
-   * @param commitSize The commitSize to set.
-   * @deprecated use public void setCommitSize( String commitSize ) instead
-   */
-  @Deprecated(since = "2.0")
-  public void setCommitSize(int commitSize) {
-    this.commitSize = Integer.toString(commitSize);
-  }
-
-  /**
-   * @param commitSize The commitSize to set.
-   */
-  public void setCommitSize(String commitSize) {
-    this.commitSize = commitSize;
-  }
-
-  /**
-   * @return Returns the skipLookup.
-   */
-  public boolean isSkipLookup() {
-    return skipLookup;
-  }
-
-  /**
-   * @param skipLookup The skipLookup to set.
-   */
-  public void setSkipLookup(boolean skipLookup) {
-    this.skipLookup = skipLookup;
-  }
-
-  /**
-   * @return Returns the ignoreError.
-   */
-  public boolean isErrorIgnored() {
-    return errorIgnored;
-  }
-
-  /**
-   * @param ignoreError The ignoreError to set.
-   */
-  public void setErrorIgnored(boolean ignoreError) {
-    this.errorIgnored = ignoreError;
-  }
-
-  /**
-   * @return Returns the ignoreFlagField.
-   */
-  public String getIgnoreFlagField() {
-    return ignoreFlagField;
-  }
-
-  /**
-   * @param ignoreFlagField The ignoreFlagField to set.
-   */
-  public void setIgnoreFlagField(String ignoreFlagField) {
-    this.ignoreFlagField = ignoreFlagField;
-  }
-
   public UpdateMeta() {
     super();
     lookupField = new UpdateLookupField();
@@ -276,8 +195,7 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
     }
 
     if (databaseMeta != null) {
-      Database db = new Database(loggingObject, variables, databaseMeta);
-      try {
+      try (Database db = new Database(loggingObject, variables, databaseMeta)) 
{
         db.connect();
 
         if (!Utils.isEmpty(lookupField.getTableName())) {
@@ -486,8 +404,6 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
                     + e.getMessage(),
                 transformMeta);
         remarks.add(cr);
-      } finally {
-        db.disconnect();
       }
     } else {
       cr =
@@ -531,9 +447,8 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
     try {
       DatabaseMeta databaseMeta =
           
metadataProvider.getSerializer(DatabaseMeta.class).load(variables.resolve(connection));
-
-      retval =
-          new SqlStatement(transformMeta.getName(), databaseMeta, null); // 
default: nothing to do!
+      // default: nothing to do!
+      retval = new SqlStatement(transformMeta.getName(), databaseMeta, null);
 
       if (databaseMeta != null) {
         if (prev != null && !prev.isEmpty()) {
@@ -710,18 +625,4 @@ public class UpdateMeta extends BaseTransformMeta<Update, 
UpdateData> {
   public boolean supportsErrorHandling() {
     return true;
   }
-
-  /**
-   * @return the useBatchUpdate
-   */
-  public boolean isUseBatchUpdate() {
-    return useBatchUpdate;
-  }
-
-  /**
-   * @param useBatchUpdate the useBatchUpdate to set
-   */
-  public void setUseBatchUpdate(boolean useBatchUpdate) {
-    this.useBatchUpdate = useBatchUpdate;
-  }
 }

Reply via email to