Heya, few points:
Indexes in elasticsearch has been "backward" compatible, and when upgrading to Lucene 4.0, it will be backward compatible as well (both on the Lucene level, and on the ES level). You might need to do an "upgrade" to make use of newer versions, or to make sure there is no "emulation" layer on Lucene level.
So, upgrading to 0.20 and 0.21 will be compatible index wise (no need to reindex), but you will need to do a full cluster restart (though we are working on eventually not needing that as well, first infrastructure for that is already going to be in upcoming 0.20).
On Oct 11, 2012, at 4:56 PM, Eugene Strokin eugene@strokin.info wrote:
Thank you for the replies, It would be very nice feature if ES automatically or by some command would upgrade the index to v.4.
Will be waiting for the new versions of ES.
Thanks again.
On Thursday, October 11, 2012 5:27:17 PM UTC-4, P Hill wrote:
On 10/11/2012 1:40 PM, Ivan Brusic wrote:
Lucene is always backwards compatible within one version, so Lucene
4.0 code should be able to read a 3.x index. Writing indexes with a
newer version and reading them in an older one is more problematic.
That said, a new ES version is more than just a Lucene upgrade, so it
might require a reindex.
Here is the statement from the release notes
Lucene Change Log
"On upgrading to 4.0, if you do not fully reindex your documents, Lucene
will emulate the new flex API on top of the old index, incurring some
performance cost (up to ~10% slowdown, typically). To prevent this
slowdown, use oal.index.IndexUpgrader to upgrade your indexes to latest
file format (LUCENE-3082
http://issues.apache.org/jira/browse/LUCENE-3082)."
Thus, as an app developer we don't have to do the work, we can trigger
an upgrade of each Lucene index when we can using a conversion tool.
IndexUpgrader (Lucene 4.0.0 API)
I'm sure this feature will be useful in ES.
-Paul
--
--