Thank you again,

Is it possible to get a fix for this issue, how should we go about it?
It would be great to be able to test a bugfix in our environment.

Best Regards

Sergey


On Tue, Apr 30, 2019 at 4:24 PM Emmanuel Lécharny <elecha...@gmail.com>
wrote:

> Ok, this a clear bug. The UniqueMemberComparator.compare() method is
> badly implemented, and returns either 0 or -1, which means we can't
> browse the index, as we never get a +1 (ie, provided uniqueMember is
> superior to the stored one).
>
> I'll get that fixed.
>
> On 30/04/2019 15:59, Emmanuel Lécharny wrote:
> > Hi Sergey,
> >
> >
> > I can positively confirm that there is a problem. I'm able to
> > reproduce the issue you are facing in a unit test.
> >
> > I'm currently debugging the server, and hope to come with a quick
> > answer (and hopefully a fix).
> >
> >
> > On 30/04/2019 11:33, Sergey Mikhno wrote:
> >> Dear Emmanuel,
> >>
> >> I spent now more than a week trying to understand why uniqueMember index
> >> doesn't work and still have no progress in understanding the problem.
> >>
> >> With a defined index on uniqueMember my query brings empty result
> >>
> >> *(**&*
> >>
> >>      *(*objectclass*=*groupOfUniqueNames*)*
> >>
> >>      *(**|*
> >>
> >>          *(*uniqueMember*=*cn=galexisLoginPOS*)*
> >>
> >>          *(*uniqueMember*=*cn=customerGalexis*)*
> >>
> >>          *(*uniqueMember*=*cn=customerAlloga*)*
> >>
> >>          *(*uniqueMember*=*cn=isDemo*)*
> >>
> >>      *)*
> >>
> >> *)*
> >>
> >>
> >>
> >> Without index the query brings correct results but is slow, 300ms.
> >> Is there any description about how to define an index on uniqueMember.
> >>
> >> We have several other non-standard indexed attributes and all of them
> >> are
> >> working.
> >> As I understand it should be possible to define an index on both
> >> member and
> >> uniqieMember.
> >>
> >> So I have 2 questions:
> >> 1. Is it correct that this query is slow because there is no index?
> >> 2. How should I define such an index?
> >>
> >> Below is the current index definition
> >> dn:
> >>
> ads-indexAttributeId=uniqueMember,ou=indexes,ads-partitionId=system,ou=parti
>
> >>
> >>   tions,ads-directoryServiceId=default,ou=config
> >> ads-indexHasReverse: FALSE
> >> entryCSN: 20190430090357.476000Z#000000#001#000000
> >> objectClass: ads-index
> >> objectClass: top
> >> objectClass: ads-jdbmIndex
> >> objectClass: ads-base
> >> createTimestamp: 20190430090357.476Z
> >> creatorsName: 0.9.2342.19200300.100.1.1=admin,2.5.4.11=system
> >> ads-indexAttributeId: uniqueMember
> >> ads-enabled: TRUE
> >> entryUUID: dcd2fa31-5ee0-48fb-9d3e-30487957045a
> >> entryParentId: fdf6f3a6-dfaf-4b1a-962c-faa14328d1ae
> >>
> >> Could you please advice?
> >>
>


-- 
Sergey Mikhno

Reply via email to