[Mailman-Developers] [ mailman-Bugs-560127 ] qrunner segfaults on specific message

noreply@sourceforge.net noreply@sourceforge.net
Mon, 27 May 2002 21:55:42 -0700


Bugs item #560127, was opened at 2002-05-24 10:29
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=100103&aid=560127&group_id=103

Category: mail delivery
>Group: Unreproducible
>Status: Closed
Resolution: None
Priority: 5
Submitted By: Douglas Paul (dwpaul)
Assigned to: Nobody/Anonymous (nobody)
Summary: qrunner segfaults on specific message

Initial Comment:
I received the following bounce message to the -admin 
account on a mailing list I run. When qrunner tries to 
process this message, it segfaults, and leaves its locks. 
When subsequent qrunner passes occur, it just 
complains that it can't get the lock. Removing the locks 
just causes it to segfault again.

The only solution I've found it to simply remove the 
message from the queue.

This originally happened with Mailman 2.0.8, but I 
upgraded to 2.0.11 and it still occurred. I was able to 
reproduce the problem by mailing the contents of the 
message to the -admin address again.

The .msg and .db files are attached.

Version Info:
Mailman 2.0.8 / 2.0.11
Python 1.5.2 (#1, Jan 19 2000, 19:01:15)  [GCC 2.95.1 
19990816 (release)] on linux-armv4l
Linux elemental 2.4.17-rmk5 #7 Mon Feb 18 18:12:50 
EST 2002 armv4l unknown
Sendmail 8.9.3

----------------------------------------------------------------------

>Comment By: Barry A. Warsaw (bwarsaw)
Date: 2002-05-28 00:55

Message:
Logged In: YES 
user_id=12800

The backtrace is useless because the stack is trashed., but
thanks anyway! :)

I'm not sure what to blame, although i have a sneaking
suspicion that it's bugs in Python 1.5.2's pickle or marshal
code.  I can't reproduce it with the files you've given, so
I can't be sure.  

At this point, upgrading to Python 2.2.1 is probably your
best bet.  If you still get crashes after the upgrade,
please open a new bug report.  You'll definitely want to use
MM2.0.11 with Python 2.2.1.

----------------------------------------------------------------------

Comment By: Douglas Paul (dwpaul)
Date: 2002-05-25 12:20

Message:
Logged In: YES 
user_id=552731

Unfortunately, my Python doesn't have any symbols, but 
here's what I get from a backtrace. It looks to me like it's 
trying to allocate a lot of memory, and a bug in glibc is 
making it crash:

(gdb) backtrace
#0  chunk_alloc (ar_ptr=0x4015bbe4, nb=40) at malloc.c:2814
#1  0x400c86fc in __libc_malloc (bytes=1075166260) at 
malloc.c:2643
#2  0xbfffdc10 in ?? ()

I also get this strange message, too:

warning: core file may not match specified executable file.
Core was generated by `'.
Program terminated with signal 11, Segmentation fault.

This system was running with glibc 2.1.2.

I tried running it on in a chrooted environment I'm building to 
upgrade my system (glibc 2.2.5, Python 2.2) and it does 
work fine.

Unless there's any other information you'd like me to find, I 
think I'll just upgrade my Python to 2.2. It's definitely not a 
bug in Mailman.

Thanks for the quick response.

----------------------------------------------------------------------

Comment By: Barry A. Warsaw (bwarsaw)
Date: 2002-05-25 03:14

Message:
Logged In: YES 
user_id=12800

I've no idea why you get a core dump, but by definition it
must be a bug in Python.  No Python script should ever be
able to crash the interpreter.

I can't find anything wrong with the files you uploaded.  Is
there any chance you can 1) run gdb on the resulting core
file to get a stack trace; 2) upgrade your Python to
something newer than 1.5.2?


----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=100103&aid=560127&group_id=103