Hans,
> It took a few day, but today amavis (2.4.5) stopped working again.
> Here is the log (level 5) output.
> Feb 21 08:05:50 rzhs098 mail:notice amavis[540686]: (540686-02)
> Requesting process rundown due to stale Sophos virus data
> Feb 21 08:05:50 rzhs098 mail:debug amavis[540686]: (540686-02)
> Amavis::In::SMTPDESTROY called, [...]
Looks like a clean shutdown of a child process...
> Feb 21 08:05:50 rzhs098 mail:debug amavis[540686]: (540686-02)
> Net::Server: Child leaving (20)
At this point the amavisd parent process is about to execute
the SAVI routine load_data(), which seems to crash the (master) process
> Feb 21 08:05:55 rzhs098 mail:info postfix/lmtp[262266]: connect to
> 127.0.0.1[127.0.0.1]: Connection refused (port 10024)
and you end up with no amavisd.
So the problem lies either in the load_data() routine, or in the
underlying SAVI library. Running the master process through strace
(or truss) could show the true reason for a crash:
su vscan
strace amavisd foreground >1.log 2>&1
Just in case the failure is non-fatal and could be caught, would you
please replace the entire (small) subroutine sub sophos_savi_reload
with the following replacement, which provides a little bit more
logging and is a bit more tolerant to SAVI problems. At least you
will see an additional log entry (at log level 2 or above):
sophos_savi_reload: about to reload SAVI data
sub sophos_savi_reload {
if (defined $savi_obj) {
do_log(2,"sophos_savi_reload: about to reload SAVI data");
my($status); eval { $status = $savi_obj->load_data };
if ($@ ne '') {
chomp($@); do_log(-1,"sophos_savi_reload failed: %s",$@);
} elsif (defined $status) {
do_log(-1,"sophos_savi_reload: failed to load SAVI virus data %s (%s)",
$savi_obj->error_string($status), $status);
}
my($version) = $savi_obj->version;
if (!ref($version)) {
do_log(-1,"sophos_savi_reload: Can't get SAVI version: %s", $version);
} else {
do_log(2,"Updated SAVI data: Version %s (engine %d.%d) ".
"recognizing %d viruses", $version->string,
$version->major, $version->minor, $version->count);
}
}
}
Mark
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
AMaViS-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/amavis-user
AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3
AMaViS-HowTos:http://www.amavis.org/howto/