OFTP file transfer resume

The OFTP implementation in Sterling B2B Integrator supports the resuming of file transfers for failed transmissions.

To enable the resume function, select the Restart option check box in the Odette FTP Physical Partner Contract page. A failed file transfer is resumed only if both the partners have enabled the resume function. The number of times the system resumes file transmission depends on the value that is set in the File Transmission Retries field in the Odette FTP Logical Partner Contract page.

On transfer of every 1-MB data, the SFIDREST column in the OFTP_OBJECT table of the sending and receiving systems is updated with the sent and received bytes. The transfer progress is displayed in the Odette FTP Queue Advanced Search page.
Note: To modify the amount of data that is saved in the SFIDREST column, set the value of the max_stream_chunk_size_bytes parameter in the jdbc.properties file to the required value. For example, to save 2-MB data, set max_stream_chunk_size_bytes to 2048000.

When file transmission fails, the transferred bytes and the received bytes are stored in the SFIDREST column of the sending and receiving systems. In the sending system, the status for a failed entry is RETRY_PENDING, and in the receiving system, the status is RECEIVE_FAIL.

When transmission is resumed, the sending system updates the status of the failed entry from RETRY_PENDING to RETRY, and sends the count of the transferred bytes to the receiving system in an SFID command. In response, the receiving system sends the count of the received bytes in an SFPA command. File transfer restarts under one of the following scenarios:
  • Byte count of the sending and the receiving systems are equal.
  • Byte count of the receiving system is less than the byte count of the sending system.
If the byte count of the receiving system is more than the byte count of the sending system, then the session is terminated because of data integrity reasons.

After a successful file transfer, the status of the related entries in the OFTP_OBJECT table is changed appropriately.
Note: In a file transmission scenario, if the EFPA command that the receiving system sends after successfully receiving a file does not reach the sending system, then the status of the file is set as follows:
  • RETRY_PENDING - If file transmission retry is configured
  • FAIL - if file transmission retry is not configured
If file transmission retry is configured, then the sending system tries to resend the file when the network, OFTP adapter, or server are functioning. If duplicate check is configured on the receiving system, then the receiving system rejects the file and sends an SFNA. Consequently, the status of the file in the sending system is changed to FAIL. However, the sending system receives the EERP or NERP.