You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spamassassin.apache.org by bu...@bugzilla.spamassassin.org on 2012/10/25 15:56:19 UTC
[Bug 6856] New: Mass check is throwing a "1/8" isn't numeric error
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6856
Priority: P2
Bug ID: 6856
Assignee: dev@spamassassin.apache.org
Summary: Mass check is throwing a "1/8" isn't numeric error
Severity: normal
Classification: Unclassified
OS: Windows 7
Reporter: kmcgrail@pccc.com
Hardware: PC
Status: NEW
Version: unspecified
Component: Masses
Product: Spamassassin
Reported on 10/24 by Marc Andre Selig and on 10/25 by Jari Fredriksson, lots of
warning messages from auto-mass-check.sh
> Syncing nightly_mass_check
> + ./mass-check --hamlog=ham-mas.log --spamlog=spam-mas.log -j 1 --progress --reuse ham:dir:/home/sacheck/corpora/ham spam:dir:/home/mas/Home/Mail/archives/spam
> status: starting scan stage now: 2012-10-24 11:00:19 AM
> status: completed scan stage, 7638 messages now: 2012-10-24 11:00:21 AM
> status: starting run stage now: 2012-10-24 11:00:21 AM
> Argument "1/8" isn't numeric in numeric le (<=) at /home/sacheck/masscheckwork/nightly_mass_check/masses/../lib/Mail/SpamAssassin/PerMsgStatus.pm line 2441.
> Argument "1/8" isn't numeric in numeric le (<=) at /home/sacheck/masscheckwork/nightly_mass_check/masses/../lib/Mail/SpamAssassin/PerMsgStatus.pm line 2441.
> Argument "1/8" isn't numeric in numeric le (<=) at /home/sacheck/masscheckwork/nightly_mass_check/masses/../lib/Mail/SpamAssassin/PerMsgStatus.pm line 2441.
> [... 7587 identical lines omitted ...]
> Argument "1/8" isn't numeric in numeric le (<=) at /home/sacheck/masscheckwork/nightly_mass_check/masses/../lib/Mail/SpamAssassin/PerMsgStatus.pm line 2441.
> status: completed run stage now: 2012-10-24 11:29:23 AM
> + LOGLIST=' ham-mas.log spam-mas.log'
> + set +x
> rsync -qPcvz ham-mas.log spam-mas.log maselig@rsync.spamassassin.org::corpus/
>
Per Jari: Same here. I have 25000+ rows with this message in my cron job email
from masscheck. It seems that every email in my corpus triggers this.
Checking the nightly mass checks that run on SA's zones, we do NOT have this
error. Likely something with IPv6, trusted networks and/or a perl module,
perhaps?
This is the logic with the error:
# ensure that rule values always result in an *increase*
# of $self->{tests_already_hit}->{$rule}:
my $value = $params{value};
if (!$value || $value <= 0) { $value = 1 }
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6856] Mass check is throwing a "1/8" isn't numeric error
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6856
Kevin A. McGrail <km...@pccc.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |kmcgrail@pccc.com
Resolution|--- |FIXED
--- Comment #4 from Kevin A. McGrail <km...@pccc.com> ---
Thanks to Marc and Mark.
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6856] Mass check is throwing a "1/8" isn't numeric error
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6856
--- Comment #2 from Mark Martinec <Ma...@ijs.si> ---
> So if the intent of have_any_bounce_relays is to return 1 if
> whitelist_bounce_relays are configured, and 0 otherwise
Great catch, thanks.
Try this:
sub have_any_bounce_relays {
my ($self, $pms) = @_;
return $pms->{conf}->{whitelist_bounce_relays} &&
%{$pms->{conf}->{whitelist_bounce_relays}} ? 1 : 0;
}
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6856] Mass check is throwing a "1/8" isn't numeric error
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6856
a29508-spamassassin@sedacon.com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |a29508-spamassassin@sedacon
| |.com
--- Comment #1 from a29508-spamassassin@sedacon.com ---
Running mass-check with --debug=all shows that the error occurs in
Mail::SpamAssassin::Plugin::VBounce, sub have_any_bounce_relays:
{{{
Oct 25 18:05:14.834 [21639] dbg: rules: ran eval rule __HAVE_BOUNCE_RELAYS
======> got hit (1/8)
}}}
rules/20_vbounce.cf defines
{{{
body __HAVE_BOUNCE_RELAYS eval:have_any_bounce_relays()
}}}
Sure enough, disabling __HAVE_BOUNCE_RELAYS in
masscheckwork/nightly_mass_check/masses/spamassassin/user_pref gets rid of the
error messages.
That function reads (file lib/Mail/SpamAssassin/Plugin/VBounce.pm, lines
93-98):
{{{
sub have_any_bounce_relays {
my ($self, $pms) = @_;
return $pms->{conf}->{whitelist_bounce_relays} &&
%{$pms->{conf}->{whitelist_bounce_relays}};
}
}}}
%{$pms->{conf}->{whitelist_bounce_relays}} is set to
('example.com'=>'^example\\.com$') for the auto-mass-check-script
(configuration option "whitelist_bounce_relays example.com")
So if the intent of have_any_bounce_relays is to return 1 if
whitelist_bounce_relays are configured, and 0 otherwise [[ is that the intent
of the function?? ]], it might better read something like this (which is much
slower than the original, though!)
{{{
sub have_any_bounce_relays {
my ($self, $pms) = @_;
return $pms->{conf}->{whitelist_bounce_relays} &&
(scalar keys %{$pms->{conf}->{whitelist_bounce_relays}}) > 0;
}
}}}
I am not familiar with the SpamAssasin code, so take this with a grain of salt.
;)
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6856] Mass check is throwing a "1/8" isn't numeric error
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6856
--- Comment #3 from Mark Martinec <Ma...@ijs.si> ---
svn ci -m "Bug 6856: Mass check is throwing a '1/8' isn't numeric error"
Sending lib/Mail/SpamAssassin/Plugin/VBounce.pm
Committed revision 1402227.
--
You are receiving this mail because:
You are the assignee for the bug.