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

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


The following commit(s) were added to refs/heads/main by this push:
     new 88efc54161 NIFI:14326: Reverting 'REMOTE_POLL_BATCH_SIZE property for 
ListSFTP' Removing Remote Poll Batch Size property in migrateProperties
88efc54161 is described below

commit 88efc54161922874db4e1f2ce20e3ef0893d82d0
Author: Joe Gresock <[email protected]>
AuthorDate: Thu Mar 6 13:12:52 2025 -0500

    NIFI:14326: Reverting 'REMOTE_POLL_BATCH_SIZE property for ListSFTP'
    Removing Remote Poll Batch Size property in migrateProperties
    
    Signed-off-by: Pierre Villard <[email protected]>
    
    This closes #9782.
---
 .../util/file/transfer/ListFileTransfer.java       |  9 +++++-
 .../apache/nifi/processors/standard/ListSFTP.java  |  2 +-
 .../nifi/processors/standard/TestListSFTP.java     | 37 +++++++---------------
 3 files changed, 20 insertions(+), 28 deletions(-)

diff --git 
a/nifi-extension-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java
 
b/nifi-extension-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java
index af10d592d9..1106b27fa3 100644
--- 
a/nifi-extension-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java
+++ 
b/nifi-extension-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java
@@ -31,6 +31,7 @@ import java.time.Instant;
 import java.time.ZoneId;
 import java.time.format.DateTimeFormatter;
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
@@ -123,7 +124,13 @@ public abstract class ListFileTransfer extends 
AbstractListProcessor<FileInfo> {
             return listing;
         }
 
-        listing.removeIf(file -> file.getLastModifiedTime() < minTimestamp);
+        final Iterator<FileInfo> itr = listing.iterator();
+        while (itr.hasNext()) {
+            final FileInfo next = itr.next();
+            if (next.getLastModifiedTime() < minTimestamp) {
+                itr.remove();
+            }
+        }
 
         return listing;
     }
diff --git 
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java
 
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java
index 09116bf837..889b2b3224 100644
--- 
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java
+++ 
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java
@@ -95,7 +95,6 @@ public class ListSFTP extends ListFileTransfer {
             SFTPTransfer.FILE_FILTER_REGEX,
             SFTPTransfer.PATH_FILTER_REGEX,
             SFTPTransfer.IGNORE_DOTTED_FILES,
-            SFTPTransfer.REMOTE_POLL_BATCH_SIZE,
             SFTPTransfer.STRICT_HOST_KEY_CHECKING,
             SFTPTransfer.HOST_KEY_FILE,
             SFTPTransfer.CONNECTION_TIMEOUT,
@@ -128,6 +127,7 @@ public class ListSFTP extends ListFileTransfer {
     public void migrateProperties(PropertyConfiguration config) {
         super.migrateProperties(config);
         FTPTransfer.migrateProxyProperties(config);
+        config.removeProperty(FileTransfer.REMOTE_POLL_BATCH_SIZE.getName());
     }
 
     @Override
diff --git 
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListSFTP.java
 
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListSFTP.java
index 2ae2b78335..f2340238c1 100644
--- 
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListSFTP.java
+++ 
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListSFTP.java
@@ -16,6 +16,16 @@
  */
 package org.apache.nifi.processors.standard;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.UncheckedIOException;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.Collections;
+import java.util.List;
+import java.util.UUID;
+
 import org.apache.nifi.components.ConfigVerificationResult;
 import org.apache.nifi.components.ConfigVerificationResult.Outcome;
 import org.apache.nifi.distributed.cache.client.DistributedMapCacheClient;
@@ -35,16 +45,6 @@ import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import java.io.File;
-import java.io.IOException;
-import java.io.UncheckedIOException;
-import java.nio.charset.StandardCharsets;
-import java.nio.file.Files;
-import java.nio.file.Paths;
-import java.util.Collections;
-import java.util.List;
-import java.util.UUID;
-
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
 public class TestListSFTP {
@@ -94,7 +94,7 @@ public class TestListSFTP {
         
runner.assertAllFlowFilesContainAttribute(ListFile.FILE_PERMISSIONS_ATTRIBUTE);
         
runner.assertAllFlowFilesContainAttribute(ListFile.FILE_SIZE_ATTRIBUTE);
         
runner.assertAllFlowFilesContainAttribute(ListFile.FILE_LAST_MODIFY_TIME_ATTRIBUTE);
-        runner.assertAllFlowFilesContainAttribute("filename");
+        runner.assertAllFlowFilesContainAttribute( "filename");
 
         final MockFlowFile retrievedFile = 
runner.getFlowFilesForRelationship(ListSFTP.REL_SUCCESS).get(0);
         retrievedFile.assertAttributeEquals("sftp.listing.user", 
sshServer.getUsername());
@@ -178,21 +178,6 @@ public class TestListSFTP {
         runner.assertTransferCount(ListSFTP.REL_SUCCESS, 0);
     }
 
-    @Test
-    public void testRemotePollBatchSizeEnforced() {
-        runner.setProperty(AbstractListProcessor.LISTING_STRATEGY, 
AbstractListProcessor.NO_TRACKING);
-        runner.setProperty(SFTPTransfer.REMOTE_POLL_BATCH_SIZE, "1");
-
-        runner.run();
-        // Of 3 items only 1 returned due to batch size
-        runner.assertTransferCount(ListSFTP.REL_SUCCESS, 1);
-
-        runner.setProperty(SFTPTransfer.REMOTE_POLL_BATCH_SIZE, "2");
-
-        runner.run();
-        runner.assertTransferCount(ListSFTP.REL_SUCCESS, 3);
-    }
-
     @Test
     public void testVerificationSuccessful() {
         final List<ConfigVerificationResult> results = ((VerifiableProcessor) 
runner.getProcessor())

Reply via email to