Five Stars

Question on tFTPPut

I am trying to transfer a file to FTP location:
Files on SFT servers are stored with a Unique tracking number which will be attached with the file with format filename#<trackingid>. 

  • Now i am trying to transfer a file to server, "DECRYPT.FILE"

  • Server is automatically changing the name of the file to "DECRYPT.FILE#ABC1111"

  • Even though transfer is successful, I receive below error in Talend job 

[ERROR]: filecomponenttesting.sftp_connectivity_0_

1.sFTP_Connectivity - tFTPPut_2 - File transfer fail./inbox/DECRYPT.FILE is not a valid file path
Exception in component tFTPPut_2

2: /inbox/DECRYPT.FILE is not a valid file path

 

I think after successful transfer, Job is checking for the file "DECRYPT.FILE" in FTP server and not able to find the file and it is throwing error.

Any idea how to resolve this issue?

1 ACCEPTED SOLUTION

Accepted Solutions
Community Manager

Re: Question on tFTPPut

Hi
Move tFTPPut to a child job, use a tRunJob to call this child job in the main job, uncheck the 'die on error' option on tRunJob. In this case, the main job always returns success status even though child job has error.

Regards
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
10 REPLIES
Ten Stars

Re: Question on tFTPPut

It sounds like you're transferring files to a Managed File Transfer site, which can handle incoming files in this manner.  Since what you're seeing is expected behavior on the part of the destination server, you'd have to catch the exception and do your own validation that the file transferred successfully.

Five Stars

Re: Question on tFTPPut

Thanks for the response,

 

If job is running in TAC, it would always say that job is "failed".

 

Do you have any suggestion, how can I manage that failure.

Ten Stars

Re: Question on tFTPPut

You can configure a tLogCatcher component to catch Java exceptions, but I'm not familiar with how that interacts with job status in TAC.

Five Stars

Re: Question on tFTPPut

Thanks,

 

I will check if I can work to catch the exception.

 

 

Moderator

Re: Question on tFTPPut

Hello,

Could you please indicate what's talend build version you are using? Can you execute your FTP job successfully in studio? Does this job only fail in TAC? Screenshots of job setting will be preferred.

Best regards

Sabrina

--
Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Five Stars

Re: Question on tFTPPut

I am using enterprise version of Big Data 6.2.1

Job is failing in both Studio and TAC.

Please find attached Screen shot

 

 

Five Stars

Re: Question on tFTPPut

Uploaded the job setting screenshot as well

Community Manager

Re: Question on tFTPPut


stamrake wrote:

Exception in component tFTPPut_2

2: /inbox/DECRYPT.FILE is not a valid file path

 

I think after successful transfer, Job is checking for the file "DECRYPT.FILE" in FTP server and not able to find the file and it is throwing error.

Any idea how to resolve this issue?


Hi stamrake 

The file has been transferred successfully to FTP server, it seems the component program is still trying to read the old file name on server and throws the error because the file name has been renamed to a new one by the server. If you are a Java developer, you can debug the Job code and check which line throws the error.

 
Does this error affect your business logic or the next step?
Do you want the job to ignore this error and return the status as success? If so, you can eliminate it by redesign the job.
 

Shong

----------------------------------------------------------
Talend | Data Agility for Modern Business
Five Stars

Re: Question on tFTPPut

Thanks Shong for the response,

 

The only issue I would face is my job would fail in TAC.

If I want to ignore this error and return the status a success, what could be the change in the job?

 

Regards,

Sanjay

Community Manager

Re: Question on tFTPPut

Hi
Move tFTPPut to a child job, use a tRunJob to call this child job in the main job, uncheck the 'die on error' option on tRunJob. In this case, the main job always returns success status even though child job has error.

Regards
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business