[ 
https://issues.apache.org/jira/browse/LUCENE-5940?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14132444#comment-14132444
 ] 

Robert Muir commented on LUCENE-5940:
-------------------------------------

{quote}
 The meta tool I have proposed could be the link between all major versions.
{quote}

I agree. In fact its the current "policy", we voted in it 4 years ago, Uwe even 
wrote the tool, but everyone forgot :)

A few notes:
* First of all, people dont realize that you cant take your 3.x index to 4.0, 
issue some commits, and bring it to 5.0 and use it. Its always been this way, 
you have to actually ensure every single segment is in the supported format. So 
some "upgrade process" is always necessary (a forceMerge(), or use of 
IndexUpgrader).
* There are bugs in this today, because we dont test the "partially supported" 
situation. For example if someone takes their 3.x index today to 4.0, kisses it 
with some commits, but it still have some 3x segments, then tries to read it 
with trunk, AFAIK they wont get IndexFormatTooOldException. Instead they will 
get a confusing SPI failure for "Lucene3x". So really, we should make a 
TooOldCodec that throws IndexFormatTooOldException and register it in SPI with 
every single codec that is unsupported.
* Finally, IMO we have an upgrade tool. pretend we cut 5.0 today. The 
instructions are simple, just run java -cp lucene-4.10.0-core.jar 
org.apache.lucene.index.IndexUpgrader <index> and you are ready.

> change index backwards compatibility policy.
> --------------------------------------------
>
>                 Key: LUCENE-5940
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5940
>             Project: Lucene - Core
>          Issue Type: Bug
>            Reporter: Robert Muir
>
> Currently, our index backwards compatibility is unmanageable. The length of 
> time in which we must support old indexes is simply too long.
> The index back compat works like this: everyone wants it, but there are 
> frequently bugs, and when push comes to shove, its not a very sexy thing to 
> work on/fix, so its hard to get any help.
> Currently our back compat "promise" is just a broken promise, because we 
> cannot actually guarantee it for these reasons.
> I propose we scale back the length of time for which we must support old 
> indexes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to