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())