[Mimedefang] Mail::SpamAssassin::BayesStore::SQL databasepersistence.

Matthew Schumacher matt.s at aptalaska.net
Wed Jul 20 12:09:24 EDT 2005


David F. Skoll wrote:
> Matthew Schumacher wrote:
> 
> 
>>It looks like the code is supposed use persistent connections:
> 
> 
> That's bogus, though; there are many explicit calls to untie_db
> sprinkled in the code.  It might just be a safety check in case
> someone calls tie_db twice.
> 
> I should also note that there are many problems with the code,
> especially because it makes many assumptions about MySQL-like
> optimizations.  For example, the code to check if "too many" tokens
> will be deleted by an expire run is just plain stupid.
> The query to check if it's OK to do the expiry takes about as long as
> the actual expiry itself!
> 
> The private _get_oldest_token_age function in SQL.pm will also
> be dreadfully slow because it does a sequential scan.
> 
> IMO, SpamAssassin's SQL.pm module is simply not production code.
> It will bog down any site doing a reasonable mail volume.
> 
> Regards,
> 
> David.

I saw that they where doing min and max and thought about that,
obviously they built the thing for mysql, but at this point I was
getting a zillion "Cannot open bayes databases /etc/mail/bayes/bayes_*
R/W: lock failed: File exists" error messages.

Is there a good method for deploying bayes on a busy site that isn't
slow or full of locking issues?

schu





More information about the MIMEDefang mailing list