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@xxxxxxxxxx> 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@xxxxxxxxxxx http://supercolony.gluster.org/mailman/listinfo/gluster-devel