On Wednesday 29 August 2007 18:48, ando@sys-net.it wrote:
rhafer@suse.de wrote:
But a malicous client can then just send requests with sizelimit 1. Those query will get cached and the database is of no real use anymore (IMO).
Well, in this case, the proxycache should either change the sizelimit (and the timelimit) to unlimited, and deal with client-requested limits locally,
This seems like the nicest approach to solve the problem. But seems to be a bit more effort. My suggest for a quick fix for this issue would be to just not cache queries that return one off the _LIMIT_EXCEEDED error codes. Probably with checking if it was a client-requested limit or a limit of the server side (in which case we could probably cache the results).
or consider uncacheable those requests that specify a time or a size limit.
Well that would cause even those queries being uncachable that would not hit the requested limit. If I understand you correctly.
On the contrary, they should be considered answerable if a corresponding request is cached, and the limits should be checked locally.