OOM in Dovecot 2.2.13 imap

Patrick Domack patrickdk at patrickdk.com
Mon Jul 14 16:05:35 UTC 2014


Just as a random follow up for other people that might google this.

I also started to have this issue. I tried the two patches but they  
didn't help.
I came to find out, this can also be caused from a disk full issue,  
atleast when using maildir.


Quoting Timo Sirainen <tss at iki.fi>:

> 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