Bug 858 - spamd exits after reaping a child under Solaris
Summary: spamd exits after reaping a child under Solaris
Status: RESOLVED DUPLICATE of bug 827
Alias: None
Product: Spamassassin
Classification: Unclassified
Component: spamc/spamd (show other bugs)
Version: 2.41
Hardware: Sun Solaris
: P2 normal
Target Milestone: ---
Assignee: SpamAssassin Developer Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-09-09 08:45 UTC by Jost Krieger
Modified: 2002-09-09 23:31 UTC (History)
0 users



Attachment Type Modified Status Actions Submitter/CLA Status
patch against accept interrupt problem on Solaris patch None Jost Krieger [NoCLA]

Note You need to log in before you can comment on or make changes to this bug.
Description Jost Krieger 2002-09-09 08:45:21 UTC
Solaris has this stupid behavior of delivering an EAGAIN error when a slow
operation (like accept) gets interrupted by a signal.

Unfortunately, spamd exits when accept returns undef.

In the special case of SA's t/spamd_maxchildren, this leads to
the testing process being killed, I don't know why now.
Comment 1 Jost Krieger 2002-09-09 09:12:06 UTC
It's more probably "EINTR". Unfortunately, you can't even find out, because
the "REAPER" clobbers $!.

I'm attaching a "kludge" patch that fixes the problem for me, but
it will go into an endless loop on hard errors (that's why the sleep is in).
Comment 2 Jost Krieger 2002-09-09 09:27:23 UTC
Created attachment 310 [details]
patch against accept interrupt problem on Solaris
Comment 3 Duncan Findlay 2002-09-09 16:37:01 UTC
This is a dupe of 827. It's not solaris specific, but related to Perl 5.8's new
sig-handling code. (I'm assuming you're using perl 5.8)

This is also fixed in CVS b2_4_0, I believe, using a slightly more kludgy kludge.

*** This bug has been marked as a duplicate of 827 ***
Comment 4 Justin Mason 2002-09-10 07:31:48 UTC
code based on this now checked in, BTW, on both b2_4_0 and
merged to HEAD.  see bug 827.