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

Re: (ITS#8788) slapd-pcache undef not compatible with mdb

quanah@openldap.org wrote:
> Full_Name: Quanah Gibson-Mount
> Version: 2.4.45
> OS: N/A
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (
> The pcache backend to slapd has the option for attr sets to note if an attribute
> that being cached is not defined in the local schema by prefixing it with
> "undef:", such as "undef:myattr".  While this functionality works fine when
> pcache is using back-bdb or back-hdb, it does not work with back-mdb.  In the
> case where back-mdb is used, an error will be logged if the hidden "pcaache"
> loglevel is used, but it will still attempt to answer queries (it will return no
> results, but with a success return code).

pcache uses slap_bv2tmp_ad() to register undef attributes. It looks like 
there's a bug here in that it doesn't initialize ad->ad_index. (bv2undef 
initializes this to zero.) Of course, that still doesn't change the fact that 
back-mdb requires schema to be fully defined.

> At a minimum, the documentation needs to be updated to note this feature
> incompatibility.  It would be additionally useful if either slapd would refuse
> to start if undef was used on top of back-mdb, or pcache would log an error that
> it could not answer the result from the cache, and fall back to doing a direct
> lookup.

   -- Howard Chu
   CTO, Symas Corp.           http://www.symas.com
   Director, Highland Sun     http://highlandsun.com/hyc/
   Chief Architect, OpenLDAP  http://www.openldap.org/project/