My NFS client does not retry I/O. Ganesha is reusing FD instead of opening file for every read request. Sometimes it closes the fd even when there is a worker waiting still in read() call on the same fd. As a result that worker returns read error and ganesha drops the RPC. NFS client does not get any reply and it eventually times out the I/O.
I see 2 solutions.
1. NFS client implement I/O retry 2. Ganesha open the file and try read again when file not opened error is returned by FSAL. 3. Ganesha open the file for every read RPC instead of reusing FD.
NFS client is a legacy implementation and it is not going to be fixed. Is there a way to achieve solutions 2 or 3?
What version of Ganesha are you using? Which FSAL? Thanks Frank p.s. also consider subscribing to the new listserve