You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Walter Haidinger <wa...@gmx.at> on 2005/01/27 16:41:56 UTC
enabling pyzor or dcc hangs spamd
Hi!
Whenever I enable either pyzor or dcc (or both), spamd hangs and spamc
doesn't return until the spamd process is killed. While running, it tries
to consume all available CPU time.
In short (more details below), here are the debug logs:
debug: Pyzor is available: /usr/bin/pyzor
debug: entering helper-app run mode
logmsg: server hit by SIGCHLD
server hit by SIGCHLD
That is, the helper-app never returns. Only if the forked spamd child is
manually killed.
Without pyzor/dcc, or when fed through spamassassin (with dcc and pyzor),
there are no problems.
I had this issue already in the past with Spamassassin 2.64. Back then I
thought the problem would resolve with v3. Apparently, as with v3.0.2, it
still persists! :-)
Is it possible to somehow debug the helper-app run mode?
But now on to the details:
Versions used:
OS: SuSE 9.1 with vanilla 2.6.10 kernel
Spamassassin: 3.0.2-1.1 SuSE binary RPM
razor: 2.61-3 SuSE binary RPM
pyzor: 0.4.0 compiled from source tarball
dcc: 1.2.68 compiled from source tarball
Once started, I run spamd with the following options:
/usr/sbin/spamd -D --daemonize --max-children=5
--pidfile=/var/run/spamd.pid --paranoid --create-prefs --user-config
--siteconfigpath=/etc/spamassassin
--helper-home-dir=/var/lib/home/spamd
--socketpath=/var/lib/home/spamd/spamd.socket
I've put some debug-logfiles to:
http://members.kabsi.at/wh/ml/spamassassin/20050127/
You'll find the following files there:
* testmsg
the test message used (yes, that IS the mailing-list subscription
confirmation request)
* spamassassin.log
_working_ spamassassin run with pyzor and dcc
* spamd-startup.log
debugs log of spamd startup (no problem there, I think)
* spamd-dcc.log
debug logs with dcc enabled (hangs)
* spamd-pyzor.log
debug logs with pyzor enabled (hangs)
* spamd-working.log
a working spamd run with both dcc and pyzor disabled
* all_logs.tar.gz
a tarball of all files above
spamc was always invoked with:
'cat testmsg | spamc -U /var/lib/home/spamd/spamd.socket'
If there is anything missing, please reply and just ask for it.
Thanks!
Thanks again if you made it until here, I appreciate that!
Regards, Walter
Re: enabling pyzor or dcc hangs spamd
Posted by Walter Haidinger <wa...@gmx.at>.
On Thu, 27 Jan 2005, Martin Karol Zuziak wrote:
> Have you tried running spamc/spamd in regular tcp/ip mode instead of
> through unix sockets?
No, not yet because using domain sockets should perform better.
I'll try this though, good suggestion!
> Is it spamd that hogs the cpu? Does it hang before executing pyzor,
> while pyzor is executing or after pyzor terminates? You might find
> helpful information by attaching (with the -p switch) strace or ltrace
> to the process hogging the cpu. The hanging process is clearly doing
> something, but what?
Yes, it's definitely spamd who is hogging the cpu. As far as I can tell,
it starts hogging right after (or when) the helper app (dcc or pyzor) is
launched. And yes, attaching strace is a another good idea! Why didn't I
think about that in the first place? ;-)
I'll test and reply asap (that is tomorrow, I hope).
Thanks,
Walter
Re: enabling pyzor or dcc hangs spamd
Posted by Martin Karol Zuziak <zu...@math.ku.dk>.
On Thu, Jan 27, 2005 at 04:41:56PM +0100, Walter Haidinger wrote:
> Hi!
>
> Whenever I enable either pyzor or dcc (or both), spamd hangs and spamc
> doesn't return until the spamd process is killed. While running, it tries
> to consume all available CPU time.
>
> In short (more details below), here are the debug logs:
> debug: Pyzor is available: /usr/bin/pyzor
> debug: entering helper-app run mode
> logmsg: server hit by SIGCHLD
> server hit by SIGCHLD
>
> That is, the helper-app never returns. Only if the forked spamd child is
> manually killed.
>
> Without pyzor/dcc, or when fed through spamassassin (with dcc and pyzor),
> there are no problems.
<snip>
> spamc was always invoked with:
> 'cat testmsg | spamc -U /var/lib/home/spamd/spamd.socket'
I am not that familiar with SA but here are some suggestions:
Have you tried running spamc/spamd in regular tcp/ip mode instead of
through unix sockets?
Is it spamd that hogs the cpu? Does it hang before executing pyzor,
while pyzor is executing or after pyzor terminates? You might find
helpful information by attaching (with the -p switch) strace or ltrace
to the process hogging the cpu. The hanging process is clearly doing
something, but what?
Good luck,
Martin Zuziak <zu...@math.ku.dk>