called with 2 bind variables when 0 are needed
Steve Freegard
steve.freegard at fsl.com
Sun Dec 9 11:24:28 GMT 2007
Kai Schaetzl wrote:
> I upgraded a machine which was still holding CentOS 4.2 to the current 4.5
> via yum. So far so good. Now, after upgrading MailScanner suddenly throws
> this error to my warn log:
> called with 2 bind variables when 0 are needed
>
> Google tells me there was one posting about this in April 2006 about this
> on this list, no reply to it and not much else.
>
> Anyone knows what this means?
Bind variables are an SQL thing used to increase efficiency for DBMS
that compile identical SQL calls and to avoid SQL injection bugs by
escaping.
> Apparently, MailScanner is stull running ok. The MailScanner log itself
> goes like this:
>
> Dec 8 22:10:38 nx05 MailScanner[16160]: New Batch: Scanning 1 messages,
> 7338 bytes
> Dec 8 22:10:46 nx05 MailScanner[16160]: Spam Checks: Found 1 spam
> messages
> Dec 8 22:10:46 nx05 MailScanner[16160]: Virus and Content Scanning:
> Starting
> Dec 8 22:10:50 nx05 MailScanner[16160]: called with 2 bind variables when
> 0 are needed
As the error appears at the Virus scanning stage I would guess that it
is related to the SpamAssassin cache and that this is the line that
generates the message:
my $sth = $MailScanner::SA::cachedbh->prepare('UPDATE cache SET
virusinfected=? WHERE md5=?');
Although this is perfectly correct.
Try running 'analyse_SpamAssassin_cache' and see if you get any errors
(if so remove the cache file).
Otherwise I'd check your versions of DBI and DBD::sqlite and upgrade
them as necessary to see if the problem disappears.
Kind regards,
Steve.
More information about the MailScanner
mailing list