On 10/12/2017 10:01 PM, Erick Erickson wrote: > You can use the IndexUpgradeTool that ships with each version of Solr > (well, actually Lucene) to, well, upgrade your index. So you can use > the IndexUpgradeTool that ships with 5x to upgrade from 4x. And the > one that ships with 6x to upgrade from 5x. etc. > > That said, none of that is necessary _if_ you >> have the Lucene version in solrconfig.xml be the one that corresponds to >> your current Solr. I.e. a solrconfig for 6x should have a luceneMatchVersion >> of 6something. >> you update your index enough to rewrite all segments before moving to the >> _next_ version. When Lucene sees merges a segment, it writes the new segment >> according to the luceneMatchVersion in solrconfig.xml. So as long as you are >> on a version long enough for all segments to be merged into new segments, >> you don't have to worry.
As far as I am aware, luceneMatchVersion in Solr will not change the segment format, but only how some Lucene components (primarily analysis) function. Have I got incorrect information? Something else that might be worth mentioning: The IndexUpgrader is an fairly simple piece of code. It runs forceMerge (optimize) on the index, creating a single new segment from the entire existing index. That ties into this thread's initial subject and LUCENE-7976. I wonder if perhaps the upgrade merge policy should be changed so that it just rewrites all existing segments instead of fully merging them. Thanks, Shawn