After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 557951 - GFileMonitor fails for files on FUSE mounts
GFileMonitor fails for files on FUSE mounts
Status: RESOLVED NOTABUG
Product: glib
Classification: Platform
Component: gio
2.18.x
Other Linux
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks:
 
 
Reported: 2008-10-26 12:08 UTC by Enrico Tröger
Modified: 2008-12-01 08:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Enrico Tröger 2008-10-26 12:08:33 UTC
I'm trying to use GFileMonitor to track file changes in my app. It works pretty fine except for files on FUSE mount points which were mounted using gvfs-mount with the gvfs-fuse server.

I'm using the following code:

file = g_file_new_for_path(filename);
priv->monitor = g_file_monitor_file(file, G_FILE_MONITOR_NONE, NULL, NULL);
g_signal_connect(monitor, "changed", G_CALLBACK(file_changed_cb), doc);

and receive the "changed" signal for local files as expected. But when using a file like
/home/enrico/.gvfs/SFTP on host/tmp/testfile
and modifying this file on the server, I don't receive a "changed" signal (tested with FTP and SFTP).

So, is this a bug in the GVFS/FUSE implementation or is it not yet implemented or just not supported?

Using:
GLib 2.18.1
GVFS 0.2.5
Fuse 2.7.4
Comment 1 Enrico Tröger 2008-11-04 17:11:00 UTC
Tested also with
GLib 2.18.2
GVFS 1.0.2
FUSE 2.7.4

but same result :(.
Comment 2 Alexander Larsson 2008-12-01 08:24:12 UTC
Such change notification is not supported. There are multiple issues:

* sftp as a protocol doesn't support change notification, so it can never work.

* some backends can support file notification, but the gvfs implementation doesn't (for instance smb)

* even if the gvfs backend supports notification, the gvfs fuse filesystem would have to proxy that to inotify, which it doesn't. This is not possible to implement with the current fuse version.

I'm closing this generic bug. If there is particular implementable things you need please open more specific bugs, one for each issue.