On Mon, Oct 21, 2019 at 11:58 AM Changwei Ge <c...@linux.alibaba.com> wrote:

> Hi,
>
> I am recently working on optimizing inode searching/getting/putting
> concurrency. Before the experiment/trial goes, I would like to get fully
> understand what the usage of several lists of inode table, especially
> for 'invalidate list', since the major difficulty making inode searching
> run concurrently is that We have to move inode from one list to the
> other and modify some attributes against inode table.
> After reading corresponding code, it seems that inode table 'invalidate
> list' is only retrieved when destroying inode table(inode_table_destroy).
>
> Can someone help explain the list usage/purpose of 'invalidate list'?
>

'invalidate_list' is used only in client side. The patch which got it is
below:

https://github.com/gluster/glusterfs/commit/d49b41e817d592c1904b6f01716df6546dad3ebe


Hope this gives some idea.

Happy to help. If there is an interest, we can even have a video conference
for all interested developers to discuss inode table, and detail out how it
is done.

For getting complete history of changes to inode.c (from
https://github.com/amarts/glusterfs/commit/72db44413ce4686b465c29ea8383fa4f09f53a76),
you can clone github.com/amarts/glusterfs and see that over time what
changes got into the file... 'git log libglusterfs/src/inode.c' gives an
idea.

Regards,
Amar


>
> Thanks,
> Changwei
>
_______________________________________________

Community Meeting Calendar:

APAC Schedule -
Every 2nd and 4th Tuesday at 11:30 AM IST
Bridge: https://bluejeans.com/118564314

NA/EMEA Schedule -
Every 1st and 3rd Tuesday at 01:00 PM EDT
Bridge: https://bluejeans.com/118564314

Gluster-devel mailing list
Gluster-devel@gluster.org
https://lists.gluster.org/mailman/listinfo/gluster-devel

Reply via email to