At 15:44 22/04/2004, Eric Kolve wrote:
And as far as caching goes, it shouldn't be a problem, because you just want to avoid doing a whole string of identical dns lookups - only cache identical lookups, and the caching should only last for one run of SA processing one message...(We assume that no new blacklist records
appear in
the middle of processing a specific message, or that if they do we don't care ;-)
Yes, it's not clear if "per test" means per message, but it would seem so. That too should be fine. I don't think we should worry too much about the boundary condition of the SURBL changing in the middle of message processing, which seems like it would be uncommon. Per-message caching is already a big help.
'per test' literally means per test. So if you run three eval:check_spamcop_uri_rbl tests, then you will have at most three queries for the same domain.
I would cache per message, but there isn't a good place to cache this data. I have access to PerMsgStatus, but its not a good idea to start shoving stuff into that hash as other code depends on its structure.
Per test is the right way to do it though isn't it ? So thats fine. The cached results of sc.surbl.org should have no bearing on ws.surbl.org...we're just trying to avoid literally identical dns queries, and spammer.com.sc.surbl.org and spammer.com.ws.surbl.org aren't identical.
But we don't want to see spammer.com.sc.surbl.org being queried 20 times for the same message ;-)
Regards, Simon