Bug 3719

Summary: RFT Client doesn't retries after a transient transfer error
Product: RFT Reporter: Simone Lanzarini <s.lanzarini@cineca.it>
Component: RFTAssignee: Ravi Madduri <madduri@mcs.anl.gov>
Status: RESOLVED FIXED    
Severity: normal CC: ogsa-bugs@globus.org
Priority: P3    
Version: 4.0.0   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Attachments: Container log

Description From 2005-09-02 11:54:33
Since I'm integrating RFT with UNICORE, I am doing some tests to be able to
properly manage the exceptions generated by RFT.
I was trying to transfer a file where I have NO permissions, and this makes the
RFT client to go to a deadlock state. 
RFT seems to consider this kind of error a transient error:

Number of transfers in this request: 1
Subscribed for overall status
Termination time to set: 60 minutes

 Overall status of transfer:
Finished/Active/Failed/Retrying/Pending
0/1/0/0/0

 Overall status of transfer:
Finished/Active/Failed/Retrying/Pending
0/0/0/1/0
Error:Transient transfer error
Server refused performing the request. Custom message:  (error code 1) [Nested
exception message:  Custom message: Unexpected reply: 500-Command failed. :
globus_l_gfs_file_open failed.
500-globus_xio: Unable to open file /tmp/ildomani.pdf
500-globus_xio: System error in open: Permission denied
500-globus_xio: A system call failed: Permission denied
500 End.] [Caused by: Server refused performing the request. Custom message: 
(error code 1) [Nested exception message:  Custom message: Unexpected reply:
500-Command failed. : globus_l_gfs_file_open failed.
500-globus_xio: Unable to open file /tmp/ildomani.pdf
500-globus_xio: System error in open: Permission denied
500-globus_xio: A system call failed: Permission denied
500 End.]]

The problem is that the container doesn't retry the transfer, and consequently
the client doesn't return.
If I restart the container, the retry is performed. To leave the client from the
deadlock I've to restart the container as times as the maximum number of retries
that I've set. 
Obviously, if I set the number of retries to 1 I don't get any deadlock.
------- Comment #1 From 2005-09-02 11:58:21 -------
Can you turn up debugging on rft package on the container and attach container
logs ?
------- Comment #2 From 2005-09-02 12:13:01 -------
Created an attachment (id=683) [details]
Container log

Here's the container log after turning up debugging.
------- Comment #3 From 2006-03-03 14:54:05 -------
Fix comitted to branch and trunk.