configuring an index entry to generate localized matching rules using the collation plugin does not work cn=description,cn=index,cn=userRoot,.... nsMatchingRule: 2.16.840.1.113730.3.3.2.11.1 ... after adding this, and re-indexing/re-importing, the description.db4 index does not contain entries like :2.16.840.1.113730.3.3.2.11.1:somevalue ...
Created attachment 489856 [details] 0002-Bug-693451-cannot-use-localized-matching-rules.patch
To ssh://git.fedorahosted.org/git/389/ds.git 27ff25d..466fced master -> master commit cb2239082a27f00d470754e5924311bd9bee4b34 Author: Rich Megginson <rmeggins> Date: Fri Apr 1 19:10:54 2011 -0600 Reviewed by: nkinder (Thanks!) Branch: master Fix Description: With the new matching rule code, the old method of identifying a simple matching rule that can use a compare function is not valid. All of the collation plugin matching rules are ordering, either ignore case or exact case. So we need another way to tell if the matching rule can use a simple compare function to generate index keys. The new function int slapi_matchingrule_can_use_compare_fn(const char *mr_oid_or_name); is used for this purpose. It looks up the oid of the matching rule and compares it to the oids used by the collation plugin. Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no
To ssh://git.fedorahosted.org/git/389/ds.git e2288d9..5c1cd5f 389-ds-base-1.2.8 -> 389-ds-base-1.2.8 commit ee0ab6921fbc6a92a554faa3218c36851b5cfe30 Author: Rich Megginson <rmeggins> Date: Fri Apr 1 19:10:54 2011 -0600
1. [root@rheltest amsharma]# ldapmodify -a -D "cn=directory manager" -w Secret123 -p 389 -h localhost << EOF > dn: cn=description,cn=index,cn=userRoot,cn=ldbm database,cn=plugins,cn=config > nsMatchingRule: 2.16.840.1.113730.3.3.2.11.1 > nsIndexType: eq > nsIndexType: pres > nsIndexType: sub > nsSystemIndex: false > objectClass: top > objectClass: nsIndex > cn: description > EOF adding new entry "cn=description,cn=index,cn=userRoot,cn=ldbm database,cn=plugins,cn=config" 2. [root@rheltest slapd-rheltest]# ./db2index.pl -D "cn=Directory Manager" -w Secret123 -n userRoot -t description adding new entry "cn=db2index_2011_4_26_16_29_19, cn=index, cn=tasks, cn=config" 3. [root@rheltest userRoot]# dbscan -f description.db4 | grep \^\:2.16.840.1.113730.3.3.2.11.1\: :2.16.840.1.113730.3.3.2.11.1:J4HJB4%06X:H%060,F%06D,F,84%06,00HTFR<F8%064FRN<4P%00 :2.16.840.1.113730.3.3.2.11.1:J4HJB4%06X:H%060,F%06D,F,84%064F8<F44N%064FRN<4P%00 :2.16.840.1.113730.3.3.2.11.1:J4HJB4%06X:H%060,F%06D,F,84%06:N%064FRN<4P%00 :2.16.840.1.113730.3.3.2.11.1:J4HJB4%06X:H%060,F%06D,F,84%06L,%064FRN<4P%00 :2.16.840.1.113730.3.3.2.11.1:PJ40<,B%06,2D<F<PRN,R<V4%06,00HTFRP%00 Marking the bug as VERIFIED.