"IOError: [Errno 32] Broken pipe" on start when many lists are present

Bug #1015369 reported by Ryan Finnie
0
Affects Status Importance Assigned to Milestone
mailman (Ubuntu)
Triaged
Low
Unassigned

Bug Description

When running "/etc/init.d/mailman start, I get:

# /etc/init.d/mailman stop
 * Stopping Mailman master qrunner mailmanctl [ OK ]
# /etc/init.d/mailman start
Traceback (most recent call last):
  File "/var/lib/mailman/bin/list_lists", line 122, in <module>
    main()
  File "/var/lib/mailman/bin/list_lists", line 114, in main
    print mlist.internal_name()
IOError: [Errno 32] Broken pipe
 * Starting Mailman master qrunner mailmanctl [ OK ]

Ultimately the error is harmless since the mailman services start, but the problem comes down to:

# /var/lib/mailman/bin/list_lists -b | grep -q "^mailman$"
Traceback (most recent call last):
  File "/var/lib/mailman/bin/list_lists", line 122, in <module>
    main()
  File "/var/lib/mailman/bin/list_lists", line 114, in main
    print mlist.internal_name()
IOError: [Errno 32] Broken pipe

This is on a system with over 600 lists. grep -q appears to close the pipe as soon as it's found a match. On an install with only a few lists, the entire output is within a single buffer page, so this does not occur. But in this case, there is enough output to have other pages available when grep closes the pipe.

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: mailman 1:2.1.14-3 [modified: var/lib/mailman/data/sitelist.cfg]
ProcVersionSignature: Ubuntu 3.2.0-24.39-generic 3.2.16
Uname: Linux 3.2.0-24-generic x86_64
NonfreeKernelModules: ksplice_m2ln4g2o ksplice_rnytomzp ksplice_5li5k6oq ksplice_sr8xrqxv ksplice_xkh9hjep_vmlinux_new ksplice_xkh9hjep ksplice_a7dwhrj2_hfsplus_new ksplice_a7dwhrj2 ksplice_wp4yddsz_vmlinux_new ksplice_wp4yddsz ksplice_lxfo9202 ksplice_ny00xobu ksplice_hr0du7qv ksplice_42wa91bq ksplice_8b8adglj ksplice_rdkyfa0c_vmlinux_new ksplice_rdkyfa0c
ApportVersion: 2.0.1-0ubuntu8
Architecture: amd64
Date: Tue Jun 19 19:32:20 2012
InstallationMedia: Ubuntu-Server 12.04 LTS "Precise Pangolin" - Beta amd64 (20120415)
ProcEnviron:
 TERM=screen
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: mailman
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Ryan Finnie (fo0bar) wrote :
Revision history for this message
Ryan Finnie (fo0bar) wrote :

I should note this was found on a lucid system, but was reproduced on precise.

Ryan Finnie (fo0bar)
description: updated
Revision history for this message
Scott Moser (smoser) wrote :

As Ryan said, this is low priority.
I can see 2 potential fixes:
 a.) change list_lists to handle the closed pipe correctly and exit without trace
 b.) change 'grep -q' to 'grep >/dev/null'

Additionally:
 * this also affects debian, and carrying ubuntu delta for this change doesn't seem to make much sense
 * list_lists is not present in mailman upstream 3.0 line.

Ryan,
  Given the above, if you'd like to see this fixed, could you report the bug to debian [1]? and then link that bug to this?
   I personally think that the 'grep >/dev/null' is a sufficient fix given the fact that list_lists is gone in upstream.

--
[1] http://www.debian.org/Bugs/Reporting

Changed in mailman (Ubuntu):
importance: Undecided → Low
status: New → Triaged
Revision history for this message
Ryan Finnie (fo0bar) wrote :

I'm not too concerned with seeing it fixed; the fact that this LP bug exists at all will probably be sufficient warning to anyone who happens to come across the same problem. (I had just completed a list rename which involves a lot of voodoo, and was concerned the error was indicative of a larger problem as a result of the rename.)

If sid already had 3.0, I wouldn't see a need to file it with Debian, as it doesn't fit Debian's criteria for a stable update. However, sid's still on 2.1, so I'll go ahead and file the bug and reference this report. If it's fixed in Debian and flows downstream to quantal, please just go ahead and mark Fixed on quantal and Wontfix on everything else.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.