Viktor Dukhovni:
> On Wed, Jul 04, 2012 at 11:53:46PM +0200, Ralf Hildebrandt wrote:
>
> > I'm encountering frequent qmgr crashes with postfix-2.10-20120630:
> >
> > Jul 4 19:20:27 mail postfix/qmgr[25825]: panic: vstream_buf_alloc: attempt
> > to shrink non-empty buffer
> > Jul 4 19:20:28 mail postfix/master[2383]: warning: process
> > /usr/lib/postfix/qmgr pid 25825 killed by signal 6
> >
> > Jul 4 19:39:15 mail postfix/qmgr[6531]: panic: vstream_buf_alloc: attempt
> > to shrink non-empty buffer
> > Jul 4 19:39:16 mail postfix/master[2383]: warning: process
> > /usr/lib/postfix/qmgr pid 6531 killed by signal 6
> >
> > Jul 4 21:53:21 mail postfix/qmgr[25007]: panic: vstream_buf_alloc: attempt
> > to shrink non-empty buffer
> > Jul 4 21:53:22 mail postfix/master[2383]: warning: process
> > /usr/lib/postfix/qmgr pid 25007 killed by signal 6
>
> If your previous snapshot is 20120520 or earlier, then the issue is likely:
>
> 20120527-8
>
> Infrastructure: limited support to shrink VSTREAM buffers.
> The change takes place when reading from (a stream for the
> first time | an empty buffer) or when writing to (a stream
> for the first time | a full buffer). TODO: the change should
> also happen after purging or flushing a buffer. File:
> util/vstream.c.
>
> So revert to the 0520 snapshot.
I am puzzled. There is code that changes the vstream buffer size in:
- haproxy handlers (smtpd, postscreen)
- code that tweaks VSTREAM read/write buffer sizes for TCP sockets
None of which would apply to qmgr.
Without further details I suspect that Ralf made a build error of some kind.
Does the error happen after sending a message to the qmgr FIFO?
Things have been running error-free with qmgr configured in master.cf
to use FIFOs and with qmgr configured for UNIX-domain sockets.
Wietse