Python version: python-2.3.4-14.3 Mailman version: mailman-2.1.5.1-34.rhel4.5
I've been getting a broken pipe error when sending log mails (usually triggered by those with attachments) through SMTPDirect (DELIVERY_MODULE = 'Sendmail' delivers, but obviously is not preferred):
Oct 30 12:59:13 2006 (25556) Low level smtp error: [Errno 32] Broken pipe, msgid: <4546679E.5030804@mesd.k12.or.us>
Watching the local MTA, I can see the connection time out 300 seconds after the connection is opened.
I'm able to trigger a similar broken pipe error trying to unpickle the queued message (/root/test.pck is a copy of a pickled message):
# /usr/lib/mailman/bin/show_qfiles /root/test.pck | head ====================> /root/test.pck Return-Path: <dyoung@mesd.k12.or.us> X-Original-To: xxxxxxx@xxxxxxxx.k12.or.us Delivered-To: xxxxxxx@xxxxxxxx.k12.or.us Received: from mrelay-i2.mesd.k12.or.us (mrelay-i2.mesd.k12.or.us [198.236.68.99]) by xxxx.xxxxxxxxx.k12.or.us (Postfix) with ESMTP id 205A370C0AF for <xxxxxxx@xxxxxxxx.k12.or.us>; Thu, 26 Oct 2006 15:29:39 -0700 (PDT) Traceback (most recent call last): File "/usr/lib/mailman/bin/show_qfiles", line 74, in ? main() File "/usr/lib/mailman/bin/show_qfiles", line 69, in main sys.stdout.write(fp.read()) IOError: [Errno 32] Broken pipe
I can suppress the IOError by patching show_qfiles:
21a22,24
import signal signal.signal(signal.SIGPIPE, signal.SIG_DFL)
Any way I can get mailman to close the connection to the MTA, short of "pass"ing on except IOError?
-- Dan Young <dyoung@mesd.k12.or.us> Multnomah ESD - Technology Services 503-257-1562