I am in favour option 2 of using flags/identifiers in the frame, for a quick check to by-pass a xlator. Using dict's could lead to performance degradation, due to get and cmp op's required to by-pass in every xlator. With regards, Shishir ----- Original Message ----- From: "Anand Avati" <anand.avati@xxxxxxxxx> To: "Raghavendra Bhat" <rabhat@xxxxxxxxxx> Cc: "gluster-devel" <gluster-devel@xxxxxxxxxx> Sent: Wednesday, August 28, 2013 10:20:51 AM Subject: Re: disabling caching and other optimizations for internal fops Setting in xdata has the benefit of getting propagated to server side without change in protocol. However that being said, dict_t in its current form is not the most efficient data structure for storing a lot of key/values (biggest concern being too many small allocations). It will be good to revive http://review.gluster.org/3910 so that such use of xdata will be of a lesser concern. Avati On Tue, Aug 27, 2013 at 12:12 AM, Raghavendra Bhat < rabhat@xxxxxxxxxx > wrote: Hi, As of now, the performance xlators cache the data and perform some optimizations for all the fops irrespective of whether the fop is generated from the application or internal xlator. I think, performance xlators should come in to picture for only the fops generated by the applications. Imagine the situation where a graph change happens and fuse xlator sends open call on the fds to migrate them to the new graph. But the open call might not reach posix if open-behind unwinds success to fuse xlator. It can be done in 2 ways. 1) Set a key in dictionary if the call is generated internally OR 2) Set a flag in the callstack itself, whether the fop is internal fop or generated from the application. Please provide feedback. Regards, Raghavendra Bhat ______________________________ _________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxx https://lists.nongnu.org/ mailman/listinfo/gluster-devel _______________________________________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxx https://lists.nongnu.org/mailman/listinfo/gluster-devel