[Evolution-hackers] looong blockup in the UI ...

2010-03-02 Thread Michael Meeks
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


Re: [Evolution-hackers] looong blockup in the UI ...

2010-03-02 Thread Matthew Barnes
On Tue, 2010-03-02 at 12:39 +, Michael Meeks wrote:
   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 :-)

I would prefer g_file_replace_contents_async() for cases like this.

Matthew Barnes

___
Evolution-hackers mailing list
Evolution-hackers@gnome.org
http://mail.gnome.org/mailman/listinfo/evolution-hackers