Thank you all. I will try managing the fd internally. And I will
subscribe to the mailing list using the link given.
On Tue, May 8, 2018 at 12:42 AM, Frank Filz <ffilzlnx(a)mindspring.com> wrote:
You can subscribe at
https://lists.nfs-ganesha.org
Are you using the support_ex functions? If not, I think there are some
bugs. The non-support_ex functions are being deprecated (and in fact don’t
exist in V2.6 or next).
If you are using support_ex, your FSAL is responsible for protecting an
in-use global FD, see how FSAL_VFS manages that.
Without support_ex, the protection is supposed to be done with the mdcache
content_lock, however, I’m not sure it’s always used. I think you can add
your own protection.
You could also yourself use a separate FD for each request.
Although mdcache manages the lifetime of FDs, the FSAL really can do
whatever it wants.
Frank
*From:* You Me [mailto:yourindianman@gmail.com]
*Sent:* Monday, May 7, 2018 5:06 PM
*To:* Frank Filz <ffilzlnx(a)mindspring.com>
*Cc:* NFS Ganesha Developers <nfs-ganesha-devel(a)lists.sourceforge.net>;
devel(a)lists.nfs-ganesha.org
*Subject:* Re: [Nfs-ganesha-devel] FD reuse in NFSv3
Ganesha 2.5.1 with my own FSAL.
How do I subscribe to new listserve?
--Satish
On Mon, May 7, 2018 at 5:58 PM, Frank Filz <ffilzlnx(a)mindspring.com>
wrote:
> 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