[Mailman-Users] Mailman/FreeBSD lockup
Mark Lysek
mjl at squid.jpl.nasa.gov
Sat Sep 9 03:14:29 CEST 2000
Ok, I tried to figure out what was going on by using ktrace and stumbling
through the code. Running qrunner with ktrace seems to indicate that
qrunner is not sending the complete message (omitting the closing "." at
the end of the message). Sendmail then eventually says: "451 timeout
waiting for input during message collect". Comparing ktrace output for
mailman posting a short vs long message: qrunner reads in the entire
message but somehow the long message is being truncated well before the
ending '.'
It appears that the message is being sent by the "send" definition on line
222 in Mailman/pythonlib/smtplib.py. I then set debuglevel=1 in that file
to see where the message was being truncated. The debugging output seems
to have the entire message being sent to the socket.
Looking in the Python bug list I find:
[ Bug #111710 ] socket.send() can do partial writes on some systems.
http://sourceforge.net/bugs/?group_id=5470&func=detailbug&bug_id=111710
specifically for FreeBSD 4.0 (and perhaps only for FreeBSD 4.0). I may
have to wait for this bug to be addressed.
-Mark
mjl at squid.jpl.nasa.gov
At 08:12 PM 9/7/00 -0700, you wrote:
>As always, it would be *really* interesting to know just what those
>processes are doing; apparently the FreeBSD command is 'ktrace'.
>Is sendmail refusing to read more data, or is mailman refusing to
>send it, or what?
>
> > Help!,
> > My (brand new) Mailman installation locks up when posting messages about
> > 50Kb or larger. (FreeBSD version 4.0, Mailman version 2.0beta5 installed
> > from the FreeBSD ports, Python 1.5.2 from the FreeBSD ports, Sendmail
> 8.9.3)
> >
> > To isolate the problem, I created a list with only one subscriber on the
> > same host as the mailman installation. When a 80Kb plaintext message is
> > posted to the list, qrunner stays around until it times out, without
> > completing it's session with sendmail. The partially queued message is
> > consistently 49152 bytes long. Shorter messages are delivered without any
> > problems. While it's stuck, the following processes are hanging around:
> >
> > mailman 39004 /bin/sh -c /usr/local/bin/python -S
> /usr/local/mailman/cron/...
> > mailman 39005 /usr/local/bin/python -S /usr/local/mailman/cron/qrunner
> > root 39007 sendmail: server localhost [127.0.0.1] child wait (sendmail)
> > root 39008 sendmail: TAA39008 localhost [127.0.0.1]: data (sendmail)
> >
> > Is there a timeout setting that should be increased?
> >
> > (This doesn't seem to be related to the problem mentioned in the mailman
> > README.BSD file, where they mention a known problem with the posixfile.py
> > module. To be sure, I added "freebsd4" to the list of OS's in that patch.)
> >
> > Thanks,
> > -Mark
> > mjl at squid.jpl.nasa.gov
> >
> >
> >
> > ------------------------------------------------------
> > Mailman-Users maillist - Mailman-Users at python.org
> > http://www.python.org/mailman/listinfo/mailman-users
More information about the Mailman-Users
mailing list