Print Page | Close Window

V3.1.3.615 on Linux/MySQL "update tblquarantine.."

Printed From: LogSat Software
Category: Spam Filter ISP
Forum Name: Spam Filter ISP Support
Forum Description: General support for Spam Filter ISP
URL: https://www.logsat.com/spamfilter/forums/forum_posts.asp?TID=6806
Printed Date: 05 February 2025 at 11:50am


Topic: V3.1.3.615 on Linux/MySQL "update tblquarantine.."
Posted By: Markus
Subject: V3.1.3.615 on Linux/MySQL "update tblquarantine.."
Date Posted: 06 March 2010 at 4:24pm
Sorry for a Question about a old version of SpamFilter.
When I changed from Windows to Linux, there was a Error in the Activity Log telling me that a table does not exist:

Exception occurred during TDeleteExpiredQuarantineThread.Execute: [MySQL][ODBC 3.51 Driver][mysqld-5.1.41-community]Table 'spamdb.tblquarantine' doesn't exist

ODBC Logging showed me that SQL statements normally come with upper and lower case mixed. Example:

SELECT tblQuarantine.QuarID, tblQuarantine.EmailTo, tblQuarantine.EmailFrom, tblQuarantine.Deliver, tblQuarantine.Expire, tblMsgs.MsgID, tblMsgs.Msg FROM tblQuarantine INNER JOIN tblMsgs ON tblQuarantine.MsgID = tblMsgs.MsgID WHERE Deliver <> 0 AND Expire = 0 AND ( (ServerID = 1) OR (ServerID = 0) OR (ServerID IS NULL) );

Only one SQL statement that does the cleanup at the quarantine table is all in lower case:

update tblquarantine set expire = 1 where msgdate <= _latin1'2010-02-04' and ( (serverid = 1) or (serverid = 0) or (serverid is null) );;

When I open the SpamFilter Application in a HEX Editor, I can find this SQL statement perfectely right:

UPDATE tblQuarantine SET Expire = 1 WHERE MsgDate <= :MsgDate AND ( (ServerID = ...

Somewhere in the code, the whole SQL statement gets converted to lowercase?

What can I do to make the quarantine cleanup work?
(Do I have to install a stored procedure instead to do the job or can you fix it that the "
UPDATE tblQuarantine SET Expire..." SQL statement doesen't get converted into lower case?)Cry





Replies:
Posted By: LogSat
Date Posted: 06 March 2010 at 10:53pm
Markus,

The version of SpamFilter you're running is very old :-) That was a known issue and was solved a long time ago starting with SpamFilter v3.5.3.657. The partial release notes for that build are as follows:

// New to VersionNumber = '3.5.3.657';
{TODO -cFix : SpamFilter could send duplicate emails when executing the process that runs every 60 minutes that reprocesses emails in the queue, as it could re-send emails that were being delivered at that exact moment}
{TODO -cNew : Added support for AUTH PLAIN in addition to AUTH LOGIN}
{TODO -cFix : Solved issues with the quarantine grid display that prevented the quarantine list form being displayed with MS Access and Access Violations with MySQL }
{TODO -cNew : Added "ScanAllHeaders" option in SpamFilter.ini file to also scan all headers for keywords}
{TODO -cFix : Emails with multiple recipients on multiple domains - if different domains have different destination SMTP servers, the email is split and delivered to each server correctly}
{TODO -cFix : Converted all queries in lowercase to fix issues with Unix-based MySQL databases}


-------------
Roberto Franceschetti

http://www.logsat.com" rel="nofollow - LogSat Software

http://www.logsat.com/sfi-spam-filter.asp" rel="nofollow - Spam Filter ISP


Posted By: Markus
Date Posted: 12 March 2010 at 10:13am
Hi Roberto
Many thanks for your fast reply. So - if there is no workaround I have to install the new version.



Print Page | Close Window