OOM in Dovecot 2.2.13 imap
Timo Sirainen
tss at iki.fi
Thu Jul 3 18:56:07 UTC 2014
Actually, I think these fix it:
http://hg.dovecot.org/dovecot-2.2/rev/5740cb57d02c
http://hg.dovecot.org/dovecot-2.2/rev/00b3aa3842b7
On 3.7.2014, at 21.28, Timo Sirainen <tss at iki.fi> wrote:
> On 23.6.2014, at 15.18, Bernhard Schmidt <berni at birkenwald.de> wrote:
>
>> we run Dovecot 2.2.13 on Debian Wheezy with a couple thousand mailboxes.
>> We have two users that repeatedly trigger an OOM condition with IMAP.
>>
>> Jun 23 12:53:21 lxmhs74 dovecot: imap(USER): Fatal: pool_system_realloc(268435456): Out of memory
> ..
>> #6 0x00007f11766e6cda in o_stream_grow_buffer (fstream=fstream at entry=0x7f11789f41c0, bytes=<optimized out>) at ostream-file.c:440
>> size = 268435456
>> new_size = <optimized out>
>> end_size = <optimized out>
> ..
>> #11 0x00007f1175692849 in o_stream_zlib_send_outbuf (zstream=0x7f11789f9340) at ostream-zlib.c:94
>> ret = <optimized out>
>> size = 12113
>> #12 0x00007f1175692982 in o_stream_zlib_send_flush (zstream=zstream at entry=0x7f11789f9340, final=final at entry=true) at ostream-zlib.c:189
>
> This is most likely because of the IMAP COMPRESS extension, which causes the output stream buffer to get really large. So the easiest fix would be to just disable imap_zlib plugin and it'll probably work. But this should get fixed properly.. I just can't figure out how this can happen. What was the IMAP client doing that caused it? Could you run a few more gdb commands:
>
>> #17 0x00007f1176e8d269 in client_output (client=0x7f11789f4470) at imap-client.c:1019
>
> Assuming client_output is again in frame 17, run:
>
> f 17
> p *client.command_queue
> p *client.command_queue.next
More information about the dovecot
mailing list