[Gluster-devel] regarding resolution for fuse/server

Anand Avati avati at gluster.org
Fri Aug 1 15:13:03 UTC 2014


There are subtle differences between fuse and server. In fuse the inode
table does not use LRU pruning, so expected inodes are guaranteed to be
cached. For e.g, when mkdir() FOP arrives, fuse would have already checked
with a lookup and the kernel guarantees another thread would not have
created mkdir in the mean time (with mutex on dir). In the server, either
because of LRU or threads racing, you need to re-evaulate the situation to
be sure. RESOLVE_MUST/NOT makes more sense in the server because of this.

HTH

On Fri, Aug 1, 2014 at 2:43 AM, Pranith Kumar Karampuri <pkarampu at redhat.com
> wrote:

> hi,
>      Does anyone know why there is different code for resolution in fuse
> vs server? There are some differences too, like server asserts about the
> resolution types like RESOLVE_MUST/RESOLVE_NOT etc where as fuse doesn't do
> any such thing. Wondering if there is any reason why the code is different
> in these two xlators.
>
> Pranith
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://supercolony.gluster.org/pipermail/gluster-devel/attachments/20140801/574ee9c3/attachment.html>


More information about the Gluster-devel mailing list