[Mailman-Users] IOError: Broken pipe on long mails

Dan Young dyoung at mesd.k12.or.us
Wed Nov 1 00:07:04 CET 2006


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 at 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 at mesd.k12.or.us>
X-Original-To: xxxxxxx at xxxxxxxx.k12.or.us
Delivered-To: xxxxxxx at 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 at 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 at mesd.k12.or.us>
Multnomah ESD - Technology Services
503-257-1562



More information about the Mailman-Users mailing list