Aaron Richton wrote:
>> Well, from 2.3 to 2.4 a change wouldn't be very
surprising. This is 2.4.6
>> to 2.4.7, which may be more surprising.
> I think we don't have too much 2.4.6 users currently and if we communicate the
> change clearly enough we can afford such a change. I think similar to Michael
> here, let's avoid the additional config setting and make the new index format
> the default. My reason for this is, that the option only really makes sense
> when using old 2.3 (and 2.4.6) databases, the options is of very low values
> when creating new databases, I guess. (And you would have to explicitly set
> it for a new database to be able to use ordered indexes).
It may be surprising in that it's not in keeping with RE22/23 practice,
but there are a lot of benefits here. If this is to make it into RE24 at
all, I'd want it to get into the train as early as possible (2.4.7?) and
agree with it being a default. Of course there will be no bugs -- but if
there are, I'd like them seen at more sites as they continue their 2.4
installations. As Ralf pointed out, 2.4 isn't often in production, so if
this is introduced as default in 2.4.7 we'll probably get a lot of free
testing from sites evaluating for RE23->RE24 transition.
OK, I guess it's fine to make it the default. However, because I think we
still want the key size to be tunable, I'm going to keep the config keyword.
Yes, this might be a bit painful for the early adopters. Is there any
sort
of magic number or similar where slapd could bail out "sorry, please
slapindex" if given a RE23 format database? Then at least the FAQ-O-Matic
could point out "use 2.4.6 slapcat then upgrade again" or some other
concrete procedure.
In this case, all you'd need is to run "slapindex -qt" to recreate the
relevant indices. (Whether that's actually faster than slapcat/slapadd, I
don't really know. Historically it's been pretty slow...)
I guess we can detect an old format index when it gets referenced, but
currently we don't reference them until an actual search operation comes
along. I.e., it's not something we would normally check at startup time, and
it would be pretty awkward at runtime.
--
-- Howard Chu
Chief Architect, Symas Corp.
http://www.symas.com
Director, Highland Sun
http://highlandsun.com/hyc/
Chief Architect, OpenLDAP
http://www.openldap.org/project/