From: Ian Kent <raven@themaw.net>
To: "John T. Kohl" <jtk@us.ibm.com>
Cc: Peter Staubach <staubach@redhat.com>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
autofs mailing list <autofs@linux.kernel.org>,
nfs@lists.sourceforge.net
Subject: Re: [autofs] Re: [NFS] Re: [RFC] Multiple server selection and replicated mount failover
Date: Mon, 29 May 2006 15:31:59 +0800 (WST) [thread overview]
Message-ID: <Pine.LNX.4.64.0605291525010.3436@raven.themaw.net> (raw)
In-Reply-To: <6cpsi36tkf.fsf@sumu.lexma.ibm.com>
On Thu, 24 May 2006, John T. Kohl wrote:
> >>>>> "PS" == Peter Staubach <staubach@redhat.com> writes:
>
> PS> When the Solaris client gets a timeout from an RPC, it checks to see
> PS> whether this file and mount are failover'able. This checks to see
> PS> whether there are alternate servers in the list and could contain a
> PS> check to see if there are locks existing on the file. If there are
> PS> locks, then don't failover. The alternative to doing this is to
> PS> attempt to move the lock, but this could be problematic because
> PS> there would be no guarantee that the new lock could be acquired.
>
> PS> Anyway, if the file is failover'able, then a new server is chosen
> PS> from the list and the file handle associated with the file is
> PS> remapped to the equivalent file on the new server. This is done by
> PS> repeating the lookups done to get the original file handle. Once
> PS> the new file handle is acquired, then some minimal checks are done
> PS> to try to ensure that the files are the "same". This is probably
> PS> mostly checking to see whether the sizes of the two files are the
> PS> same.
>
> PS> Please note that this approach contains the interesting aspect that
> PS> files are only failed over when they need to be and are not failed over
> PS> proactively. This can lead to the situation where processes using the
> PS> the file system can be talking to many of the different underlying
> PS> servers, all at the sametime. If a server goes down and then comes back
> PS> up before a process, which was talking to that server, notices, then it
> PS> will just continue to use that server, while another process, which
> PS> noticed the failed server, may have failed over to a new server.
>
> If you have multiple processes talking to different server replicas, can
> you then get cases where the processes aren't sharing the same files given
> the same name?
>
> Process "A" looks up /mount/a/b/c/file.c (using server 1) opens it and
> starts working on it. It then sits around doing nothing for a while.
>
> Process "B" cd's to /mount/a/b, gets a timeout, fails over to server 2,
> and then looks up "c/file.c" which will be referencing the object on
> server 2 ?
>
> A & B then try locking to cooperate...
>
> Are replicas only useful for read-only copies? If they're read-only, do
> locks even make sense?
Apps will take locks whether it makes sense or not.
So refusing to fail-over if locks are held is likely the best approach.
The case of replica filesystems themselves being updated could give rise
to some interesting difficulties.
Ian
next prev parent reply other threads:[~2006-05-29 7:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-02 5:56 [RFC] Multiple server selection and replicated mount failover Ian Kent
2006-05-24 5:05 ` Ian Kent
2006-05-24 13:02 ` [NFS] " Peter Staubach
2006-05-24 13:45 ` Ian Kent
2006-05-24 14:04 ` Peter Staubach
2006-05-24 14:31 ` Ian Kent
2006-05-24 20:45 ` [NFS] " John T. Kohl
2006-05-24 20:52 ` Dan Stromberg
2006-05-29 7:31 ` Ian Kent [this message]
2006-05-30 12:02 ` [autofs] " Jeff Moyer
2006-05-24 16:29 ` Trond Myklebust
2006-05-24 17:58 ` [autofs] " Jeff Moyer
2006-05-24 18:31 ` Trond Myklebust
2006-05-24 19:17 ` Peter Staubach
2006-05-24 19:45 ` Trond Myklebust
2006-05-25 3:56 ` Ian Kent
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.64.0605291525010.3436@raven.themaw.net \
--to=raven@themaw.net \
--cc=autofs@linux.kernel.org \
--cc=jtk@us.ibm.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=nfs@lists.sourceforge.net \
--cc=staubach@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).