[Gluster-devel] regarding resolution for fuse/server

2014-08-01 Thread Pranith Kumar Karampuri

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
___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel


Re: [Gluster-devel] regarding resolution for fuse/server

2014-08-01 Thread Anand Avati
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 pkara...@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

___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel