Hi Martin,

On 8/18/07, Martin Alderson <equim@planetquake.com> wrote:
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.  

Yeah this could get very large.  If for example theres an index on dc and
there are 4 entries in the server that have a dc attribute when there are
millions of entries in the server then the index as it is now will be tiny. Now
if we applied this idea where we included all the entries that do not have
this attribute at all then we'd millions - 4 entries in that btree of the dc index.

All existing ApacheDS installations would
also need their attribute indices rebuilding too.

What do you think?

I think we can logically infer that a value is not present if the entry id is not in this attribute
index and is not in the existence system index.  You see where I'm going with this?