spamass-milt-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: spass-milter core dump


From: Dan Nelson
Subject: Re: spass-milter core dump
Date: Tue, 27 Mar 2007 11:03:56 -0500
User-agent: Mutt/1.5.14 (2007-02-12)

In the last episode (Mar 27), James Lees Vodanovich said:
> I am running
> Spamassasin 3.1.8
> Spamass-milter 0.3.1
> Sendmail 8.13.5
> on NetBSD 3.1
> 
> The load is about 170 messages per hour
> 
> Spamass-milter crashes about intermittently
> Command line
> is -u nobody -p /var/run/spamass.sock -f
> Nothing in spamassin's log or sendmail's log give any sense of what went 
> wrong.
> 
> The relevant section from my mc config file is
> #Spassassian Stuff
> #Improve Milter performance
> define(`confSEPARATE_PROC', `True')dnl
> define(`confMAX_DAEMON_CHILDREN', `24')dnl
> #The Milter
> INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass.sock, F=T, 
> T=C:20m;S:20m;R:20m;E:20m')
> define(`confINPUT_MAIL_FILTERS', `spamassassin')dnl
> define(`confMILTER_MACROS_ENVRCPT',`r, v, Z')dnl
> define(`confMILTER_MACROS_CONNECT',`t, b, j, _, {daemon_name}, {if_name}, 
> {if_addr}')dnl
> define(`confMILTER_MACROS_HELO',`s, {tls_version}, {cipher}, {cipher_bits}, 
> {cert_subject}, {cert_issuer}')dnl
> 
> 
> Here is the backtrace from spamass-milter.core (28MB) it had been 
> running only a few hours
> Any idea's
> (gdb) bt
> #0  0xbda5e0fb in kill () from /usr/lib/libc.so.12
> #1  0xbdb103b5 in pthread__errorfunc () from /usr/lib/libpthread.so.0
> #2  0xbdb0d441 in pthread_mutex_unlock () from /usr/lib/libpthread.so.0
> #3  0x0805336a in std::basic_string<char, std::char_traits<char>, 
> std::allocator<char> > std::operator+<char, std::char_traits<char>, 
> std::allocator<char> >(char const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const&) ()
> #4  0x0805291a in std::basic_string<char, std::char_traits<char>, 
> std::allocator<char> > std::operator+<char, std::char_traits<char>, 
> std::allocator<char> >(char const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const&) ()
> #5  0x080529bb in std::basic_string<char, std::char_traits<char>, 
> std::allocator<char> > std::operator+<char, std::char_traits<char>, 
> std::allocator<char> >(char const*, std::basic_string<char, 
> std::char_traits<char>, std::allocator<char> > const&) ()
> #6  0xbdb0f17d in pthread_create () from /usr/lib/libpthread.so.0

That's an odd stack trace, since I don't see any frames belonging to
spamass-milter itself, and I don't think the standard C++ string
methods use mutexes :)  It looks like pthread_mutex_unlock found
something wrong and called pthread__errorfunc to print a message, which
then called kill(getpid(), SIGABRT).  To get that error message, you
can either run spamass-milter in a terminal window without background
it, or you can set the environment variable PTHREAD_DIAGASSERT to "l",
which should cause the error to get sent to syslog.

Spamass-milter doesn't use any mutexes itself except when running on
FreeBSD (to work around a popen bug in old versions of 4.x), so I'm not
sure what the underlying cause would be.

-- 
        Dan Nelson
        address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]