Bug 132429 - Nautilus thumbnails are not always updated
Nautilus thumbnails are not always updated
Status: CLOSED WORKSFORME
Product: Fedora
Classification: Fedora
Component: nautilus (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Alexander Larsson
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2004-09-13 07:35 EDT by Daniel Malmgren
Modified: 2007-11-30 17:10 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-09-27 05:07:36 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Daniel Malmgren 2004-09-13 07:35:33 EDT
Description of problem:
In my script folder (~/.gnome2/nautilus-scripts) I've got some scripts
for manipulating images using ImageMagick mogrify (rotating, flipping,
etc). Before switching from fam to Gamin Nautilus thumbnails was
always updated to reflect these changes to the images, now it doesn't
work anymore.

If I run the script manually from a console it works though. The
thumbnail gets updated as soon as the relevant Nautilus window gets
focus. When running the script from Nautilus the screen never loses
focus, is that maybe part of the problem?

Version-Release number of selected component (if applicable):
0.0.9-1

Additional info:
It seems to me like the thumbnail updating works for small images
(below 60k or something).
Comment 1 Daniel Veillard 2004-09-13 07:45:20 EDT
No idea... can be a timeout issue, if all changes are made within a 
second, gamin may not pick them up.

Daniel
Comment 2 Daniel Malmgren 2004-09-13 08:02:55 EDT
That doesn't make sense. In that case it would fail with the small
images but not with the large, wouldn't it? (since it would take more
time rotating a 300k image than a 60k one)

Is there any way I can provide any more information? A quick "grep -i
gamin /var/log/*" returns nothing of interest...
Comment 3 Daniel Veillard 2004-09-13 08:16:59 EDT
How to debug gamin:

http://www.gnome.org/~veillard/gamin/debug.html

Daniel
Comment 4 Daniel Malmgren 2004-09-13 09:08:59 EDT
I'm not quite sure I understand this correctly. Tried reading the
debug guidelines. Firstly, where do I find the gam_client? I can only
find gam_server (in /usr/libexec). Secondly, is gam compiled with
debug support or do I have to recompile it from srpm? Thirdly, when I
try to kill the server (to restart it in console) it just respawns. Is
there any problem running two servers at the same time so I have to
kill it in some other way?

Anyway, I've discovered one thing that may be part of the problem.
When running gam_server I get the line "added /mnt/* to excludes".
Most of my images are on a partition under /mnt. Does this mean they
aren't watched and if so where do I change that?

(Sorry for all the questions. I'm clearly not quite sure how these
things work...)
Comment 5 Daniel Veillard 2004-09-13 09:57:37 EDT
> Anyway, I've discovered one thing that may be part of the problem.
> When running gam_server I get the line "added /mnt/* to excludes".
> Most of my images are on a partition under /mnt. Does this mean they
> aren't watched and if so where do I change that?

  they are watched, but with polling, once per second.
You cannot change this, this is not a user settable option.

Daniel
Comment 6 Daniel Malmgren 2004-09-14 04:19:33 EDT
Well, this seems to happen on root partition as well, so the excludes
doesn't seem to be the problem.

Until I find the answers to my other questions I can't do any real
debugging though...
Comment 7 Daniel Veillard 2004-09-14 05:03:05 EDT
yes it is respawn when killed. The doc explains how to start more
servers for debugging purpose (use a different ID), you don't have 
to recompile. there is no gam_client anywhere it is just an example
name for the client application being debugged, in your case nautilus !

Daniel
Comment 8 Daniel Malmgren 2004-09-14 05:07:57 EDT
Ah! Thanks for the explanation!

I tried simply exporting GAM_DEBUG in my .bashrc so that both the
server and Nautilus are run in gam debug mode (if I've understood it
correctly). Then I suddenly get loads of this line in my .xsession-errors:

(nautilus:3431): libgnomevfs-WARNING **: Föråldrad funktion.
Användarändringar i MIME-databasen stöds inte längre.

(Which if translated from swedish says something like:
(nautilus:3431: libgnomevfs-WARNING **: Obsoleted function. User
changes in the MIME database are no longer supported.)

Don't know if this is relevant...
Comment 9 Daniel Veillard 2004-09-14 05:11:05 EDT
I have no idea how this could be relevant to gamin. This might be
relevant to your problem though.

Daniel
Comment 10 Daniel Malmgren 2004-09-14 05:29:18 EDT
Ok. Followed the debugging guidelines and did a proper debugging now.
I got the following. Don't know, but the last line looks suspicious to me.

[~$] /usr/libexec/gam_server --notimeout test
added /media/* to excludes
added /mnt/* to excludes
Initialized Poll
dnotify initialized
Using DNotify as backend
Ready listening to socket /tmp/fam-daniel-test : 5
gam_incoming_conn_read called
accepted incoming connection: 6
Created connection 6
gam_client_conn_read called
read credentials byte
Credentials: s_uid 500, c_uid 500, c_gid 500, c_pid 3855
Created listener for 3855
Wrote 1 bytes to socket 6
gam_client_conn_read called
read 30 bytes from client
Request: from 3855, seq 1, type 2
Created subscription for /usr/share/mime-info
gam_dnotify_add_subscription
Poll: added subscription
gam_dnotify_consume_subscriptions()
gam_dnotify_add_subscription: done
gam_dnotify_consume_subscriptions_real()
1 new subscriptions.
activated DNotify for /usr/share/mime-info
Looking for existing files in: /usr/share/mime-info...
Poll: poll_file for /usr/share/mime-info called
Poll: poll_file : new
Poll: scanning directory /usr/share/mime-info
Event to 3855 : /usr/share/mime-info Exists
Wrote 30 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/evolution-2.0.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/evolution-2.0.mime
Event to 3855 : evolution-2.0.mime Exists
Wrote 28 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gimp-2.0.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gimp-2.0.keys
Event to 3855 : gimp-2.0.keys Exists
Wrote 23 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/evolution-2.0.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/evolution-2.0.keys
Event to 3855 : evolution-2.0.keys Exists
Wrote 28 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/bluefish.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/bluefish.mime
Event to 3855 : bluefish.mime Exists
Wrote 23 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/bluefish.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/bluefish.keys
Event to 3855 : bluefish.keys Exists
Wrote 23 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/system-config-printer.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/system-config-printer.keys
Event to 3855 : system-config-printer.keys Exists
Wrote 36 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/bug-buddy.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/bug-buddy.keys
Event to 3855 : bug-buddy.keys Exists
Wrote 24 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gpdf.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gpdf.keys
Event to 3855 : gpdf.keys Exists
Wrote 19 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gnome-vfs.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gnome-vfs.mime
Event to 3855 : gnome-vfs.mime Exists
Wrote 24 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gnome-vfs.keys~ called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gnome-vfs.keys~
Event to 3855 : gnome-vfs.keys~ Exists
Wrote 25 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/totem.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/totem.keys
Event to 3855 : totem.keys Exists
Wrote 20 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/palm.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/palm.mime
Event to 3855 : palm.mime Exists
Wrote 19 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gedit.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gedit.keys
Event to 3855 : gedit.keys Exists
Wrote 20 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/palm.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/palm.keys
Event to 3855 : palm.keys Exists
Wrote 19 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/themus.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/themus.keys
Event to 3855 : themus.keys Exists
Wrote 21 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/gnome-vfs.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/gnome-vfs.keys
Event to 3855 : gnome-vfs.keys Exists
Wrote 24 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/fontilus.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/fontilus.mime
Event to 3855 : fontilus.mime Exists
Wrote 23 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/file-roller.mime called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/file-roller.mime
Event to 3855 : file-roller.mime Exists
Wrote 26 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/file-roller.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/file-roller.keys
Event to 3855 : file-roller.keys Exists
Wrote 26 bytes to socket 6
Poll: poll_file for /usr/share/mime-info/fontilus.keys called
Poll: poll_file : new
Poll: emit events for /usr/share/mime-info/fontilus.keys
Event to 3855 : fontilus.keys Exists
Wrote 23 bytes to socket 6
Event to 3855 : /usr/share/mime-info None
Wrote 30 bytes to socket 6
Done scanning /usr/share/mime-info
gam_client_conn_read called
read 39 bytes from client
Request: from 3855, seq 2, type 2
Created subscription for /home/daniel/.gnome/mime-info
gam_dnotify_add_subscription
Poll: added subscription
gam_dnotify_consume_subscriptions()
gam_dnotify_add_subscription: done
gam_dnotify_consume_subscriptions_real()
1 new subscriptions.
activated DNotify for /home/daniel/.gnome/mime-info
Looking for existing files in: /home/daniel/.gnome/mime-info...
Poll: poll_file for /home/daniel/.gnome/mime-info called
Poll: poll_file : new
Poll: scanning directory /home/daniel/.gnome/mime-info
Event to 3855 : /home/daniel/.gnome/mime-info Exists
Wrote 39 bytes to socket 6
Poll: poll_file for /home/daniel/.gnome/mime-info/user.keys called
Poll: poll_file : new
Poll: emit events for /home/daniel/.gnome/mime-info/user.keys
Event to 3855 : user.keys Exists
Wrote 19 bytes to socket 6
Poll: poll_file for /home/daniel/.gnome/mime-info/user.mime called
Poll: poll_file : new
Poll: emit events for /home/daniel/.gnome/mime-info/user.mime
Event to 3855 : user.mime Exists
Wrote 19 bytes to socket 6
Event to 3855 : /home/daniel/.gnome/mime-info None
Wrote 39 bytes to socket 6
Done scanning /home/daniel/.gnome/mime-info
gam_client_conn_read called
failed to read() from client connection
Comment 11 Daniel Malmgren 2004-10-04 09:36:23 EDT
I'm terribly sorry, but today's update (0.0.14-1) doesn't fix this bug...

Did you try to reproduce it yourself?
Comment 12 Daniel Veillard 2004-10-04 09:45:26 EDT
I have no idea where your issue comes from. It seems related to
timing, sorry you will have to show it as a gamin problem for
me to fix it. And so far I have no way to reproduce it, so I
am not trying to track the bug. The log you provided shows nothing
wrong on the gamin side.

Daniel
Comment 13 Daniel Malmgren 2004-10-04 09:50:49 EDT
Ok. Does that imply that this might be a Nautilus bug? I haven't seen
it anywhere but in Nautilus, but on the other hand I don't think
nobody but Nautilus uses Gamin?

Would there be a point in refiling this bug as a Nautilus one?
Comment 14 Daniel Veillard 2004-10-04 09:58:14 EDT
I have no idea. I do not know how to analyze a bug I cannot reproduce.

Daniel
Comment 15 Daniel Malmgren 2004-10-04 10:10:34 EDT
I guess I'll just reclassify it as a Nautilus bug and see if the
Nautilus folks know what to do.
Comment 16 David Zeuthen 2005-04-14 19:18:17 EDT
I can reproduce something similar: Repeatedly moving a PDF file from one folder
to another sometimes make Nautilus display a "generic icon", ie. the thumbnail
is not updated. Only when the file is double clicked (to launch Evince) the
thumbnail is generated.

Alex: can you confirm that whether to rethumbnail a file depends on proper file
monitoring? (e.g. is this a gamin bug)
Comment 17 Alexander Larsson 2005-04-18 06:07:12 EDT
If you can trigger the problem (not thumbnailing) while moving the file *with
nautilus* that is a nautilus bug. It doesn't (shouldn't) need file monitoring to
know about changes it does by itself.
Comment 18 Daniel Malmgren 2006-09-27 05:07:36 EDT
Old bug. Haven't seen this problem in ages. Closing.

Note You need to log in before you can comment on or make changes to this bug.