Mani created CAMEL-24575:
----------------------------

             Summary: SFTP Consumer: Request for lock-strategy-agnostic 
minimum-age file filtering
                 Key: CAMEL-24575
                 URL: https://issues.apache.org/jira/browse/CAMEL-24575
             Project: Camel
          Issue Type: Improvement
          Components: camel-ftp, camel-sftp
    Affects Versions: 4.14.5
            Reporter: Mani


*Background:*
CAMEL-23931 introduced preSort=modified which resolved our oldest-first 
ordering requirement beautifully. Thank you for the quick turnaround on that. 
This ticket is a follow-up for a related gap we are still working around.


 
*Our Use Case:*
We need the SFTP consumer to handle two guarantees when picking up files:
 * Process files in oldest-modified-first order — resolved by preSort=modified
 * Skip files that are still actively being written to the server — only pick 
up files that have been stable for a minimum duration

 

*The Gap:*
Camel already has readLockMinAge which is exactly the semantic we need for 
requirement 2. However, in our setup we use a custom lock strategy with 
readLock=none and readLockMinAge appears to be unavailable unless 
readLock=changed is configured. This means we cannot benefit from it regardless 
of what we set. 

 

*Current Workaround:*
We maintain a size-snapshot tracker inside our custom lock strategy 
implementation that records file sizes across consecutive poll cycles and only 
allows processing once the size has been unchanged for the configured duration.


 
*The Ask:*
Would it be feasible to expose a min-age filter at the same level as preSort — 
operating on the SftpRemoteFile[] array before any lock strategy is involved? 
Since this sits upstream of lock acquisition it would be lock-strategy-agnostic 
and works alongside any custom locking. Combined with preSort=modified this 
would give us oldest-stable-file-first natively and let us remove all custom 
stability-tracking.
 
 
*References:*
CAMEL-23931 — preSort feature (related prior request)
Mailing list thread ([email protected], August 12):  
[link|https://lists.apache.org/thread/3nwv3rh5ffjl5v5x08hprq3w0qckn28o]

 

Tagging [~davsclaus] for visibility



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to