Dear Nifi Developer Support Team,
I am writing to request assistance regarding an error encountered in the
PutSFTP processor of our Apache NiFi data flow. Below are the details of the
error:
Error:
ERROR [Timer-Driven Process Thread-223] o.a.nifi.processors.standard.PutSFTP
PutSFTP[id=0a8613a0-018e-1000-ec12-8485106ac6fe] Unable to transfer
StandardFlowFileRecord[uuid=f07ce855-1a60-45bb-845b-c56f77b8965d,claim=StandardContentClaim
[resourceClaim=StandardResourceClaim[id=1710445580505-1, container=default,
section=1], offset=98313,
length=990],offset=0,name=20240209-203419_II0224SE45_894298_822585_313.tar.gz,size=990]
to remote host nfs1
due to org.apache.nifi.processor.exception.ProcessException: IOException thrown
from PutSFTP[id=0a8613a0-018e-1000-ec12-8485106ac6fe]: java.io.IOException:
Failed to rename dot-file to
/remote-path/20240209-203419_II0224SE45_894298_822585_313.tar.gz due to 4:
Failure: java.io.IOException: Failed to rename dot-file to
/remote-path/20240209-203419_II0224SE45_894298_822585_313.tar.gz due to 4:
Failure; routing to failure
java.io.IOException: Failed to rename dot-file to
/remote-path/20240209-203419_II0224SE45_894298_822585_313.tar.gz due to 4:
Failure
at
org.apache.nifi.processors.standard.util.SFTPTransfer.put(SFTPTransfer.java:787)
at
org.apache.nifi.processors.standard.PutFileTransfer$1.process(PutFileTransfer.java:134)
at
org.apache.nifi.controller.repository.StandardProcessSession.read(StandardProcessSession.java:2692)
at
org.apache.nifi.controller.repository.StandardProcessSession.read(StandardProcessSession.java:2660)
at
org.apache.nifi.processors.standard.PutFileTransfer.onTrigger(PutFileTransfer.java:126)
at
org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1360)
at
org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:246)
at
org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:102)
at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: net.schmizz.sshj.sftp.SFTPException: Failure
at net.schmizz.sshj.sftp.Response.error(Response.java:140)
at net.schmizz.sshj.sftp.Response.ensureStatusIs(Response.java:133)
at
net.schmizz.sshj.sftp.Response.ensureStatusPacketIsOK(Response.java:125)
at net.schmizz.sshj.sftp.SFTPEngine.rename(SFTPEngine.java:250)
at net.schmizz.sshj.sftp.SFTPClient.rename(SFTPClient.java:124)
at net.schmizz.sshj.sftp.SFTPClient.rename(SFTPClient.java:119)
at
org.apache.nifi.processors.standard.util.SFTPTransfer.put(SFTPTransfer.java:783)
... 15 common frames omitted
This error occurs when attempting to transfer a file to the remote host server
that we have on running on Centos7 server called nfs1, specifically during the
renaming process with the .LCK extension.
In the Nifi PutSFTP processor we have the following settings marked as the
following to rename the files to .LCK files prior to the completion of the
transfer which will be renamed on transfer completion.
[cid:17d78a56-efef-416b-8846-5e3225893a92]
The file does successfully transfer to folder that we have created on our
Centos7 server however the error shown above pops up in the Nifi UI and the
Nifi logs.
[Screenshot 2024-03-20 at 1.36.19?PM.png]
In order to ensure that it was not a permissions/certificate issue, I have used
the cert to sftp commands in my terminal to the host machine and create,
delete, and rename files that are inside the target directory.
Could you please investigate this issue and provide guidance on how to resolve
it? If additional information or logs are required, please let me know, and I
will be happy to provide them.
Thank you for your assistance!