On Mon, 2011-12-05 at 15:26 +0100, Xavier Pons wrote:
Hi, we are getting some core dumps with signal 6 in ltmp on a dovecot director proxy server, like this:
Dec 5 14:31:51 sproxy1 dovecot: lmtp(29999): Panic: file lmtp-proxy.c: line 376 (lmtp_proxy_output_timeout): assertion failed: (proxy->data_input->eof)
I think the way I originally planned LMTP proxying to work is simply too complex to work reliably, perhaps even if the code was bug-free. So instead of reading+writing DATA at the same time, this patch changes the DATA to be first read into memory or temp file, and then from there read and sent to the LMTP backends:
http://hg.dovecot.org/dovecot-2.1/raw-rev/51d87deb5c26
The patch applies on top of v2.0 also. I tested that it appears to work, but more testing wouldn't hurt to make sure it won't corrupt large mails when sending them to multiple backends (one mail with multiple RCPT TOs sent to multiple different backends)..