> -----Original Message-----
> From: Soumya Koduri [mailto:skod...@redhat.com]
> Sent: Tuesday, July 26, 2016 10:00 AM
> To: Frank Filz <ffilz...@mindspring.com>; 'kanishk rastogi'
> <kanishk...@gmail.com>; nfs-ganesha-devel@lists.sourceforge.net
> Subject: Re: [Nfs-ganesha-devel] FSAL locks implementation
> 
> Thanks for your inputs Frank.
> 
> On 07/26/2016 09:46 PM, Frank Filz wrote:
> > The current FSAL lock owner implementation is a void * (though the
> > FSAL DOES have visibility to the actual lock owner information if it
> > needed to use it). Anything more would only be needed if the
> > underlying filesystem was prepared to allow Ganesha to recover locks
> > after a Ganesha crash. This would actually be necessary for an
> > absolutely correct FSAL_PROXY implementation, unfortunately the NFS v4
> > protocol has limited provision for a client to recover it's lost
> > state. The implementations we have been making on clustered
> > filesystems have been to failover to another node and notify NFS
> > v3 clients of a crash, and allow NFS v4 clients to discover the crash,
> > and thus the clients reclaim the locks. Ideally, Ganesha as a cluster
> > is able to enforce grace period.
> >
> > So with all of that, there's no real need for anything more than a
> > void * pointer to the SAL state owner structure which provides the
> > uniqueness of the owner for the duration of it's validity within the
> > system. If Ganesha crashes, the underlying filesystem should dump
> > state. If the protocol layer invalidates the owner (lease expiry or
> > whatever), then all state will have been released and the owner no
> > longer has meaning to the underlying filesystem.
> 
> But what about the case where Ganesha process doesn't crash but still
there
> could be failover/failback happening between two active ganesha
> servers(for eg., load-balancing). We ensure nfs-ganesha servers going to
> grace period using dbus commands. But then even though the clients try to
> reclaim their locks using their previous lock owner, since the state_owner
> struct is now changed, backend FS may assume it as a new lock request and
> may deny it as there is still old lock present with a different owner. Or
does
> NFS-Ganesha duly unlocks all its existing locks whenever it enters grace-
> period either after hard reboot or via dbus?

That is why we have the release_IP dBus command, it signals the Ganesha that
is giving up clients to drop their locks.

Frank


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to