From: Peter Staubach <staubach@redhat.com>
To: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: uketinen@us.ibm.com, nfs@lists.sourceforge.net
Subject: Re: NFS dentry caching mechanism
Date: Fri, 27 Jan 2006 08:49:07 -0500 [thread overview]
Message-ID: <43DA24D3.3090400@redhat.com> (raw)
In-Reply-To: <1138369456.8712.14.camel@lade.trondhjem.org>
Trond Myklebust wrote:
>On Fri, 2006-01-27 at 08:38 -0500, Peter Staubach wrote:
>
>
>
>>For systems which are based on the ONC+ code (Ie. Solaris), on write-able
>>file systems, the negative cache entries are _always_ validated using a
>>forced over the wire GETATTR operation. Read-only file systems are
>>treated slightly differently by using the normal attribute cache mechanism
>>to do the validation. This keeps the client from falling into this trap.
>>
>>It is okay for the client to think that a file exists which may not, because
>>it can detect the difference. It is not okay for a client to decide that a
>>file does not exist without a strong validation mechanism because there is
>>no way for the application to determine otherwise.
>>
>>
>
>That makes negative dentries more or less worthless: if you are going to
>force a GETATTR call every time, you might as well do a full lookup.
>
>
>
Well, the need for the stronger consistency in this case reduces the
performance benefits, but does not eliminate them. A GETATTR will
always be cheaper than a LOOKUP, especially one that will mostly
likely return ENOENT.
>We revalidate the parent directory (following the standard attribute
>caching rules - no forced GETATTR). If the parent directory has changed,
>we drop the negative dentry, and force a new lookup.
>
And this leads to the unacceptable problem that a correctly written
application may not work because of this cache.
Correctness first, then performance.
Thanx...
ps
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
next prev parent reply other threads:[~2006-01-27 13:49 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-26 22:40 NFS dentry caching mechanism Usha Ketineni
2006-01-26 23:14 ` Trond Myklebust
2006-01-27 13:38 ` Peter Staubach
2006-01-27 13:44 ` Trond Myklebust
2006-01-27 13:49 ` Peter Staubach [this message]
2006-01-27 14:26 ` Trond Myklebust
2006-01-27 14:43 ` Peter Staubach
2006-01-27 15:13 ` Trond Myklebust
2006-01-27 15:36 ` Peter Staubach
2006-01-27 17:13 ` Trond Myklebust
2006-01-27 18:20 ` Peter Staubach
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=43DA24D3.3090400@redhat.com \
--to=staubach@redhat.com \
--cc=nfs@lists.sourceforge.net \
--cc=trond.myklebust@fys.uio.no \
--cc=uketinen@us.ibm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.