You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Martin Karol Zuziak <zu...@math.ku.dk> on 2005/01/18 11:12:50 UTC

Deep recursion error

Hi

There has been a few posts about this error but so far no solution.

I have a mail which, when sent to spamd with spamc, causes spamd to
consume a lot of memory and cpu time. The scanning takes about 30
seconds for this mail of approx. 200 kB but the real problem is that it
causes spamd to go from 50 to 190 MB consumed memory. Additionally,
spamd logs several errors about "Deep recursion". The error log is
attached below.

The mail is a result of repeated bounces between two servers. That in
itself is a problem but the mail should not trigger such bad behavior in
spamd.

I'm using spamassassin 3.0.1 with perl 5.8.3 on SuSE Linux 9.2
(kernel 2.6.5).

The offending mail can be found at
http://www.math.ku.dk/~zuziak/sa/satrigger.txt

Can anyone help me with this?

Thanks,

Martin Zuziak <zu...@math.ku.dk>

********

Jan 18 10:40:31 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::parse_body" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 521, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_do_parse" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 242, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_do_parse" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 242, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_multipart" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 437, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::new" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 611, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::new" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 611, <GEN3284> line 6525.
Jan 18 10:40:37 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122, <GEN3284> line 6525.
Jan 18 10:40:44 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122, <GEN3284> line 6525.
Jan 18 10:40:46 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122.
Jan 18 10:40:46 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::content_summary" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 460.
Jan 18 10:40:50 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.
Jan 18 10:41:02 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.
Jan 18 10:41:02 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.



Re: Deep recursion error

Posted by Martin Karol Zuziak <zu...@math.ku.dk>.
On Tue, Jan 25, 2005 at 12:45:35PM -0800, Justin Mason wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> takes 12 secs in 3.1.0 trunk, and consumes about 180MB of RAM alright. it
> also produces lots of ugly non-fatal warnings:
> 
> Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::content_summary" at lib/Mail/SpamAssassin/Message/Node.pm line 441.
> Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at lib/Mail/SpamAssassin/Message/Node.pm line 127.
> Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::finish" at lib/Mail/SpamAssassin/Message/Node.pm line 640.
> Deep recursion on subroutine "Mail::SpamAssassin::Message::finish" at lib/Mail/SpamAssassin/Message/Node.pm line 640.
> 
> it'd be nice to fix this -- could you open a bug on the bugzilla
> and attach the message to that as an attachment?

I have filed it under bug id 4103.

Martin Zuziak <zu...@math.ku.dk>


Re: Deep recursion error

Posted by Jim Maul <jm...@elih.org>.
Martin Karol Zuziak wrote:
> On Tue, Jan 25, 2005 at 03:08:44PM -0500, Jim Maul wrote:
> 
>>Martin Karol Zuziak wrote:
>>
>>>Hello list
>>>
>>>Well, so far no replies to my post regarding "deep recursion" errors.
>>>
>>>I have tested the message with 'spamassassin' (ie. not spamc/spamd) with
>>>the same result. The scanning took 21 CPU seconds on a Intel Pentium 3,
>>>1133 MHz and consumed 180 MB memory.
>>>
>>>Am I the only one seeing this problem? Could someone else test the
>>>message and report if you too are seeing excessive cpu and memory load.
>>>
>>>The message is at http://www.math.ku.dk/~zuziak/sa/satrigger.txt .
>>>
>>>
>>
>>[jmaul@external jmaul]$ time spamc -r < satrigger.txt
>>
>>real    0m4.860s
>>user    0m0.000s
>>sys     0m0.000s
>>
>>SA 2.64 on a P4 2.4ghz
>>
>>Dont know how much memory it consumed during those 4.8 seconds but i 
>>seriously doubt it was 180mb.  The machine only has 256mb and has about 
>>50mb free after the scan which is about normal for this machine.
> 
> 
> Interesting. Are you using razor, pyzor or dcc?
> 
> Maybe the problem only exists in 3.0. The errors I'm seeing seems to be
> generated by spamassassin itself, not an external module.
> 
> Martin Zuziak <zu...@math.ku.dk>
> 
> 
> 

Im using razor, surbl and bayes.  Pyzor and dcc are turned off.

Its also worth noting that i dont see any errors whatsoever during the scan.

-Jim

Re: Deep recursion error

Posted by Martin Karol Zuziak <zu...@math.ku.dk>.
On Tue, Jan 25, 2005 at 03:08:44PM -0500, Jim Maul wrote:
> Martin Karol Zuziak wrote:
> >Hello list
> >
> >Well, so far no replies to my post regarding "deep recursion" errors.
> >
> >I have tested the message with 'spamassassin' (ie. not spamc/spamd) with
> >the same result. The scanning took 21 CPU seconds on a Intel Pentium 3,
> >1133 MHz and consumed 180 MB memory.
> >
> >Am I the only one seeing this problem? Could someone else test the
> >message and report if you too are seeing excessive cpu and memory load.
> >
> >The message is at http://www.math.ku.dk/~zuziak/sa/satrigger.txt .
> >
> >
> 
> [jmaul@external jmaul]$ time spamc -r < satrigger.txt
> 
> real    0m4.860s
> user    0m0.000s
> sys     0m0.000s
> 
> SA 2.64 on a P4 2.4ghz
> 
> Dont know how much memory it consumed during those 4.8 seconds but i 
> seriously doubt it was 180mb.  The machine only has 256mb and has about 
> 50mb free after the scan which is about normal for this machine.

Interesting. Are you using razor, pyzor or dcc?

Maybe the problem only exists in 3.0. The errors I'm seeing seems to be
generated by spamassassin itself, not an external module.

Martin Zuziak <zu...@math.ku.dk>


Re: Deep recursion error

Posted by Jim Maul <jm...@elih.org>.
Martin Karol Zuziak wrote:
> Hello list
> 
> Well, so far no replies to my post regarding "deep recursion" errors.
> 
> I have tested the message with 'spamassassin' (ie. not spamc/spamd) with
> the same result. The scanning took 21 CPU seconds on a Intel Pentium 3,
> 1133 MHz and consumed 180 MB memory.
> 
> Am I the only one seeing this problem? Could someone else test the
> message and report if you too are seeing excessive cpu and memory load.
> 
> The message is at http://www.math.ku.dk/~zuziak/sa/satrigger.txt .
> 
>

[jmaul@external jmaul]$ time spamc -r < satrigger.txt

real    0m4.860s
user    0m0.000s
sys     0m0.000s

SA 2.64 on a P4 2.4ghz

Dont know how much memory it consumed during those 4.8 seconds but i 
seriously doubt it was 180mb.  The machine only has 256mb and has about 
50mb free after the scan which is about normal for this machine.

-Jim

Re: Deep recursion error

Posted by Martin Karol Zuziak <zu...@math.ku.dk>.
Hello list

Well, so far no replies to my post regarding "deep recursion" errors.

I have tested the message with 'spamassassin' (ie. not spamc/spamd) with
the same result. The scanning took 21 CPU seconds on a Intel Pentium 3,
1133 MHz and consumed 180 MB memory.

Am I the only one seeing this problem? Could someone else test the
message and report if you too are seeing excessive cpu and memory load.

The message is at http://www.math.ku.dk/~zuziak/sa/satrigger.txt .

Thanks,

Martin Zuziak <zu...@math.ku.dk>


On Tue, Jan 18, 2005 at 11:12:50AM +0100, Martin Karol Zuziak wrote:
> Hi
> 
> There has been a few posts about this error but so far no solution.
> 
> I have a mail which, when sent to spamd with spamc, causes spamd to
> consume a lot of memory and cpu time. The scanning takes about 30
> seconds for this mail of approx. 200 kB but the real problem is that it
> causes spamd to go from 50 to 190 MB consumed memory. Additionally,
> spamd logs several errors about "Deep recursion". The error log is
> attached below.
> 
> The mail is a result of repeated bounces between two servers. That in
> itself is a problem but the mail should not trigger such bad behavior in
> spamd.
> 
> I'm using spamassassin 3.0.1 with perl 5.8.3 on SuSE Linux 9.2
> (kernel 2.6.5).
> 
> The offending mail can be found at
> http://www.math.ku.dk/~zuziak/sa/satrigger.txt
> 
> Can anyone help me with this?
> 
> Thanks,
> 
> Martin Zuziak <zu...@math.ku.dk>
> 
> ********
> 
> Jan 18 10:40:31 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::parse_body" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 521, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_do_parse" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 242, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_do_parse" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 242, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_multipart" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 437, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::new" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 611, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::_parse_normal" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 446, <GEN3284> line 6525.
> Jan 18 10:40:34 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::new" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message.pm line 611, <GEN3284> line 6525.
> Jan 18 10:40:37 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122, <GEN3284> line 6525.
> Jan 18 10:40:44 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122, <GEN3284> line 6525.
> Jan 18 10:40:46 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::_find_parts" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 122.
> Jan 18 10:40:46 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::content_summary" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 460.
> Jan 18 10:40:50 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::Node::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.
> Jan 18 10:41:02 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.
> Jan 18 10:41:02 imf spamd[6173]: Deep recursion on subroutine "Mail::SpamAssassin::Message::finish" at /usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Message/Node.pm line 659.
> 
>