directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Alderson <eq...@planetquake.com>
Subject Re: svn commit: r567310 - in /directory/apacheds/trunk: core/src/main/java/org/apache/directory/server/core/partition/impl/btree/ server-unit/src/test/java/org/apache/directory/server/
Date Sat, 18 Aug 2007 23:12:27 GMT
Hi Alex,

We need both the entries that don't pass the specified filter for the 
attribute, and those that don't have the attribute at all.  We would 
need a way to get all entries that are not contained in the index for 
the attribute and a way to join that enumeration to the one we had in 
the old code (which should be easy enough with a JoinedEnumeration class).

I think the current attribute indices need to be modified to store a 
list of entries that do not have the attribute.  Each index will then 
take up a bit more space.  All existing ApacheDS installations would 
also need their attribute indices rebuilding too.

What do you think?

Martin


Alex Karasulu wrote:
> Is there no way to use indices with searches that use a negation operator in
> the filter?  I'm feeling
> like perhaps we're nixing out the whole thing to solve the problem.  Then
> again what's the performance
> impact of a full master scan verses a full index scan.
> 
> Alex
> 
> On 8/18/07, malderson@apache.org <malderson@apache.org> wrote:
>> Author: malderson
>> Date: Sat Aug 18 11:24:21 2007
>> New Revision: 567310
>>
>> URL: http://svn.apache.org/viewvc?view=rev&rev=567310
>> Log:
>> Fix for DIRSERVER-951, where a search with a negated filter on an indexed
>> attribute won't find entries without the attribute.
>>
>> Modified:
>>
>>     directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/partition/impl/btree/DefaultOptimizer.java
>>
>>     directory/apacheds/trunk/core/src/main/java/org/apache/directory/server/core/partition/impl/btree/ExpressionEnumerator.java
>>
>>     directory/apacheds/trunk/server-unit/src/test/java/org/apache/directory/server/DIRSERVER951ITest.java
>>


Mime
View raw message