lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael McCandless <>
Subject Re: Lucene's default settings & back compatibility
Date Wed, 20 May 2009 12:55:35 GMT
On Wed, May 20, 2009 at 8:28 AM, Yonik Seeley
<> wrote:

>> So I think you're suggesting something like this: when you use Lucene,
>> if you want "latest and greatest" defaults, do nothing.
>> If instead you want defaults to match a particular past minor release,
>> you must call (say) LuceneVersions.setVersion(VERSION_21).
> Either way would work - we could reverse it for stronger back compat if desired.
> For 3.0, and all 3.x releases, set actsAsVersion=30000 by default in Lucene.

Right, we could go either way, so it's a policy decision.  (But I
favor changing our policy so users that require back-compat must call

> A program could set actsAsVersion=LUCENE_VERSION_ANY (999999) and
> always get new behavior,
> or just  choose the specific version they are using to test/develop
> with; actsAsVersion=30201 to get the behavior changes of 3.2.1
> But since 3.0 is a major release anyway, we could change the default
> of actsAsVersion with each 3.x release (or just set it to 39999) and
> require that a users set actsAsVersion=30000 (or whatever version they
> are on) in order to get maximum back compatibility.
> For 2.9, we could start changing behavior and default
> actsAsVersion=20401 (or 20499?) to act like the latest 2.4.x release.


So, in 2.9 we introduce this new way of managing Lucene's back compat
defaults, but there's no policy change, because actsAsVersion defaults
to 20099 (2.0.x).  This simply provides the machinery but does not
change the back-compat policy.  Users can upgrade to 2.9 like normal
and Lucene will act as 2.0.

Then, in 3.0 we default actsAsVersion to 399999, which is a policy
change, meaning if back-compat is important to you, your app should
set actsAsVersion accordingly.

> And we could still leisurely proceed with Settings classes where they
> made sense.



To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message