Skip to content

SFTP file transfer task returns status_code=4

View some of the Frequently Asked Questions to our support staff. Included are some tips and tricks making this forum ideal for users getting started with GoAnywhere MFT. Note: Users can reply to existing topics but only our support staff can add new topics to this forum.
  • User avatar
  • Support_Julie Offline
  • Support Specialist
  • Posts: 91
  • Joined: Thu Mar 05, 2009 3:49 pm
  • Location: Ashland, NE USA
  • Contact:

SFTP file transfer task returns status_code=4

Post by Support_Julie »

Question:
In a job log, during an SFTP file transfer, you receive an error stating “status_code=4”

Stack trace example: (the status_code=4 is found in the "Caused by" paragraph)

Code: Select all

com.linoma.dpa.ExecutionException: [8098 - SFTP] java.net.SocketException: There is no process to read data written to a pipe. 
	at com.linoma.ga.projects.ProjectUtilities.getExecutionException(Unknown Source)
	at com.linoma.ga.projects.impl.GoAnywhereProjectUtilities.getExecutionException(Unknown Source)
	at com.linoma.ga.projects.tasks.ftp.PutAction.execute(Unknown Source)
	at com.linoma.ga.projects.tasks.ftp.AbstractFTPTask.execute(Unknown Source)
	at com.linoma.ga.projects.Module.execute(Unknown Source)
	at com.linoma.ga.projects.Project.execute(Unknown Source)
	at com.linoma.ga.projects.runtime.Job.executeProject(Unknown Source)
	at com.linoma.ga.projects.runtime.Job.run(Unknown Source)
	at com.linoma.dpa.util.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at com.linoma.dpa.util.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Thread.java:804)
Caused by: com.linoma.ga.projects.tasks.ftp.FTPInterfaceException: java.net.SocketException: There is no process to read data written to a pipe.
	at com.linoma.ga.projects.tasks.ftp.SFTPImpl.upload(Unknown Source)
	at com.linoma.ga.projects.tasks.ftp.PutAction.processFile(Unknown Source)
	at com.linoma.ga.projects.tasks.ftp.PutAction.uploadFiles(Unknown Source)
	... 9 more
Caused by: java.net.SocketException: There is no process to read data written to a pipe. (status_code=4)
	at com.jcraft.jsch.ChannelSftp._put(Unknown Source)
	at com.jcraft.jsch.ChannelSftp.put(Unknown Source)
	... 12 more

Answer:
status_code=4 is a message coming from the SFTP server.
You will need to contact your trading partner to find out what the error indicates.

status_code=4 could mean several things:
Note that not all servers use all codes. Most SSH/SFTP servers, including the most commonly used OpenSSH, support only SFTP version 3 that defines only codes 0 to 8.

These servers would generally use code 4 (Failure) for many errors for which there is specific code defined in later versions of SFTP protocol, such as:
  • Renaming file to name of already existing file.
  • Creating directory that already exists.
  • Moving remote file to different filesystem (HDD).
  • Uploading file to full filesystem (HDD).
  • Exceeding user disk quota.
It’s best practice to compare client and server logs, so you have all the relevant information to determine what could be causing the error message. Keep in mind, a job log with debug log level will help you see the lower level commands between the SFTP client and server.
Julie Rosenbaum
Sr Support Analyst
e. [email protected]
p. 1.800.949.4696
w. HelpSystems.com