----- Original Message ----- > From: "Raghavendra Bhat" <rab...@redhat.com> > To: "Gluster Devel" <gluster-devel@gluster.org> > Cc: "Anand Avati" <aav...@redhat.com> > Sent: Thursday, December 18, 2014 12:31:41 PM > Subject: [Gluster-devel] explicit lookup of inods linked via readdirp > > > Hi, > > In fuse I saw, that as part of resolving a inode, an explicit lookup is > done on it if the inode is found to be linked via readdirp (At the time > of linking in readdirp, fuse sets a flag in the inode context). It is > done because, many xlators such as afr depend upon lookup call for many > things such as healing.
Yes. But the lookup is a nameless lookup and hence is not sufficient enough. Some of the functionalities that get affected AFAIK are: 1. dht cannot create/heal directories and their layouts. 2. afr cannot identify gfid mismatch of a file across its subvolumes, since to identify a gfid mismatch we need a name. >From what I heard, afr relies on crawls done by self-heal daemon for >named-lookups. But dht is worst hit in terms of maintaining directory >structure on newly added bricks (this problem is slightly different, since we >don't hit this because of nameless lookup after readdirp. Instead it is >because of a lack of named-lookup on the file after a graph switch. >Neverthless I am clubbing both because a named lookup would've solved the >issue). I've a feeling that different components have built their own way of >handling what is essentially same issue. Its better we devise a single >comprehensive solution. > > But that logic is not there in gfapi. I am thinking of introducing that > mechanism in gfapi as well, where as part of resolve it checks if the > inode is linked from readdirp. And if so it will do an explicit lookup > on that inode. As you've mentioned a lookup gives a chance to afr to heal the file. So, its needed in gfapi too. However you've to speak to afr folks to discuss whether nameless lookup is sufficient enough. > > NOTE: It can be done in NFS server as well. Dht in NFS setup is also hit because of lack of named-lookups resulting in non-healing of directories on newly added brick. > > Please provide feedback. > > Regards, > Raghavendra Bhat > _______________________________________________ > Gluster-devel mailing list > Gluster-devel@gluster.org > http://supercolony.gluster.org/mailman/listinfo/gluster-devel > _______________________________________________ Gluster-devel mailing list Gluster-devel@gluster.org http://supercolony.gluster.org/mailman/listinfo/gluster-devel