Hi guys,
I just got an, oh - several second blocking of the UI of Evolution
inside:
Thread 1 (Thread 0xb5c1a740 (LWP 775)):
#0 0xe424 in __kernel_vsyscall ()
#1 0xb6d56aef in fsync () from /lib/libpthread.so.0
#2 0xb5fc0cbc in write_to_temp_file (err=value optimized out,
dest_file=value optimized out, length=value optimized out,
contents=value optimized out) at gfileutils.c:978
#3 IA__g_file_set_contents (err=value optimized out, dest_file=value
optimized out, length=value optimized out, contents=value optimized out)
at gfileutils.c:1082
#4 0xb76c83e4 in shell_view_save_state (shell_view=value optimized out) at
e-shell-view.c:235
#5 0xb76c8451 in shell_view_state_timeout_cb (shell_view=0x846cad0
[EMailShellView]) at e-shell-view.c:249
#6 0xb5fd1b06 in g_timeout_dispatch (source=0xa63b1dd0, callback=0,
user_data=0x846cad0) at gmain.c:3396
#7 0xb5fd1448 in g_main_dispatch (context=value optimized out) at
gmain.c:1960
#8 IA__g_main_context_dispatch (context=value optimized out) at gmain.c:2513
#9 0xb5fd4bf3 in g_main_context_iterate (context=0x8074808, block=1,
dispatch=1, self=0x807bf88) at gmain.c:2591
#10 0xb5fd50ba in IA__g_main_loop_run (loop=0x94b2380) at gmain.c:2799
#11 0xb675cc69 in IA__gtk_main () at gtkmain.c:1218
#12 0x0804ab37 in main (argc=134960160, argv=0x1) at main.c:611
This of course is down to the geniuses who decided that we need an
'fsync' in glib's g_file_set_contents (we don't).
Does anyone object if instead of g_file_set_contents we just use fopen,
fwrite, fclose ? any API method that does fsync is just a disaster-area
for latency on a loaded ext3 system; and it is -totally- un-necessary to
have some heavy-lifting transactional guarentees for an utter
corner-case, for a non-critical file anyway :-)
Thanks,
Michael.
--
michael.me...@novell.com , Pseudo Engineer, itinerant idiot
___
Evolution-hackers mailing list
Evolution-hackers@gnome.org
http://mail.gnome.org/mailman/listinfo/evolution-hackers