Menu

#479 qrunner segfaults on specific message

Unreproducible
closed
nobody
5
2002-05-28
2002-05-24
No

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

Discussion

  • Douglas Paul

    Douglas Paul - 2002-05-24

    .msg file of broken message

     
  • Douglas Paul

    Douglas Paul - 2002-05-24

    .db file of broken message

     
  • Barry Warsaw

    Barry Warsaw - 2002-05-25

    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?

     
  • Douglas Paul

    Douglas Paul - 2002-05-25

    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.

     
  • Barry Warsaw

    Barry Warsaw - 2002-05-28

    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.

     
  • Barry Warsaw

    Barry Warsaw - 2002-05-28
    • milestone: 163965 --> Unreproducible
    • status: open --> closed
     

Log in to post a comment.