Re: @devel - Why no inotify?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The gluster client is a userspace application that connects to the servers and then provides the filesystem interface to the kernel using the fuse module. The kernel then provides a mountable filesystem.

inotify is a kernel function that watches an inode for changes. That function would monitor the kernel-side of the fuse interface but it would have no idea what happens on the userspace side. How should a kernel be made aware of inode changes in a cluster? Should it notify regardless of which client changes the inode? Since the gluster client isn't made aware that the kernel is monitoring an inode, the client would have to notify fuse of every change in the entire cluster. That's way too much traffic making that solution unable to scale.

I think there were some kernel hackers working on an idea for that, but I don't know where that's at or how far along they got.

If you wrote your application to use libgfapi you could add a watch for a particular file and be notified of changes (I believe, don't start development without verifying this in the library code).

If any of this doesn't make sense, feel free to ask more. Like everything when you start operating clusters at scale, it's a complicated problem. :)


On 05/22/18 10:05, lejeczek wrote:
how about gluste's own client(s)?
You mount volume (locally to the server) via autofs/fstab and watch for inotify on that mountpoing(or path inside it).
That is something I expected was out-of-box.

On 03/05/18 17:44, Joe Julian wrote:
There is the ability to notify the client already. If you developed against libgfapi you could do it (I think).

On May 3, 2018 9:28:43 AM PDT, lemonnierk@xxxxxxxxx wrote:

    Hey,

    I thought about it a while back, haven't actually done it but I assume
    using inotify on the brick should work, at least in replica volumes
    (disperse probably wouldn't, you wouldn't get all events or you'd need
    to make sure your inotify runs on every brick). Then from there you
    could notify your clients, not ideal, but that should work.

    I agree that adding support for inotify directly into gluster would be     great, but I'm not sure gluster has any mechanics for notifying clients     of changes since most of the logic is in the client, as I understand it.

    On Thu, May 03, 2018 at 04:33:30PM +0100, lejeczek wrote:

        hi guys will we have gluster with inotify? some
        point / never? thanks, L.
------------------------------------------------------------
        Gluster-users mailing list
        Gluster-users@xxxxxxxxxxx
        http://lists.gluster.org/mailman/listinfo/gluster-users




_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://lists.gluster.org/mailman/listinfo/gluster-users

_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://lists.gluster.org/mailman/listinfo/gluster-users

_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://lists.gluster.org/mailman/listinfo/gluster-users




[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux