hyc@symas.com wrote:
Can you spell out again what behavior you're aiming for?
I think what makes sense so far is: If the client provides a sizelimit, save that away. Forward the request with no sizelimit, so the cache can see everything.
OK.
If the forwarded request hits a sizelimit, I think we can still use the result.
In principle, yes. But not with current query containment, because if the sizelimit is hit, say, with mail=*@example.com, then current query containment would indicate that mail=foo@example.com is contained in the sizelimit-hit query, but if mail=foo@example.com exists but is not contained in the subset of mail=*@example.com that is cached, nothing would be returned.
While there's no guarantee that repeated attempts to search the remote server would return the exact same set of entries, there's also no harm done if the cache does so.
But if the result exceeds the cache's sizelimit, the result set must be uncached, same as now.
Yes, but the query would be cached (as failing), and this would make query containment behave as above. I think I'm missing where query containment can be modified to not check whether a query is contained in that failing because sizelimit.
p.
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it --------------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Email: pierangelo.masarati@sys-net.it ---------------------------------------