Comment 14 for bug 225615

Revision history for this message
Austin Lund (austin-lund) wrote :

I'm pretty sure this trace is the core of the problem:

==8552== 21,765,138 bytes in 30,061 blocks are still reachable in loss record 47 of 47
==8552== at 0x4C22FAB: malloc (vg_replace_malloc.c:207)
==8552== by 0x63CDC8B: g_malloc (gmem.c:131)
==8552== by 0x63E1737: g_slice_alloc (gslice.c:824)
==8552== by 0x63E3052: g_slist_append (gslist.c:117)
==8552== by 0x58B3199: append_buffer (soup-message-body.c:389)
==8552== by 0x58B4C43: read_body_chunk (soup-message-io.c:308)
==8552== by 0x58B4FC2: io_read (soup-message-io.c:754)
==8552== by 0x58B5906: io_unpause_internal (soup-message-io.c:955)
==8552== by 0x63C6261: g_main_context_dispatch (gmain.c:2009)
==8552== by 0x63C9515: g_main_context_iterate (gmain.c:2642)
==8552== by 0x63C97D6: g_main_loop_run (gmain.c:2850)
==8552== by 0x40B73F: daemon_main (daemon-main.c:270)
==8552== by 0x40B9A0: main (daemon-main-generic.c:39)

It seems to want to read the entire file into a buffer and not flush it out to the disk at regular intervals. However, I have no experience with SOUP and I am finding the code hard to understand.