[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: limits on internal searches

> (2) is only for syncrepl_entry().
> For syncrepl_del_nonpresent(), the current approach (1) looks more
> appropriate than (3).
> For syncrepl_entry(), if it does not violate the limit checking semantics,
> I'll change it to (2).

All of them are compatible with limits semantics! ;)

- {st}limit = 0 means that server-side limits will be applied,
  if defined; in detail, the "soft" limits are used
- {st}limit = SLAP_NO_LIMIT (i.e. -1) means that no limits
  will be applied (e.g. rootdn is executing without any specific
  limit set).  Note that the protocol does not allow to use
  negative numbers, that's why I used -1 for the purpose,
  because it can only be set by internal searches.
- {st}limit = 1 means that more than one result (or more than
  one second; I guess slimit=1 and tlimit=-1 is better...)
  will cause the underlying backend to return a sizeLimitExceeded.
  If this is what you expect, fine; otherwise you need to set
  a callback that traps it, to handle the error as appropriate.
  This is done, I believe, in slap_sasl_match() and slap_sasl2dn(),
  and the callback intercepts the error.

Ciao, p.

Pierangelo Masarati

    SysNet - via Dossi,8 27100 Pavia Tel: +390382573859 Fax: +390382476497