You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Paul Danese <pd...@yahoo.com> on 2008/02/25 10:25:58 UTC

CorruptIndexException: unknown format version: -3

2Hi all,

Is there any way to recover from such an error as listed in the subject heading?

Luke can view the index just fine (at least at a cursory level Luke is able to open the index, give me back the # of docs, etc.), but solr throws this exception whenever I try and start it up.

any ideas on how to proceed?
can I use luke or something else to "uncorrupt", modify or save my index into a non-corrupt format?

TIA!!


 org.apache.solr.core.SolrException log
SEVERE: java.lang.RuntimeException: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
        at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:433)
        at org.apache.solr.core.SolrCore.<init>(SolrCore.java:216)
        at org.apache.solr.core.SolrCore.getSolrCore(SolrCore.java:177)
        at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:69)
        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:99)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:594)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
        at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
        at org.mortbay.jetty.Server.doStart(Server.java:210)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
        at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.mortbay.start.Main.invokeMain(Main.java:183)
        at org.mortbay.start.Main.start(Main.java:497)
        at org.mortbay.start.Main.main(Main.java:115)
Caused by: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
        at org.apache.lucene.index.SegmentTermEnum.<init>(SegmentTermEnum.java:64)
        at org.apache.lucene.index.TermInfosReader.<init>(TermInfosReader.java:49)
        at org.apache.lucene.index.SegmentReader.initialize(SegmentReader.java:184)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:157)
        at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:139)
        at org.apache.lucene.index.IndexReader$1.doBody(IndexReader.java:194)
        at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:610)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:184)
        at org.apache.lucene.index.IndexReader.open(IndexReader.java:148)
        at org.apache.solr.search.SolrIndexSearcher.<init>(SolrIndexSearcher.java:87)
        at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:424)
        ... 27 more





       
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.

Re: CorruptIndexException: unknown format version: -3

Posted by Michael McCandless <lu...@mikemccandless.com>.
Maybe double check your CLASSPATHs?

Because, based on the line numbers in the exception, it really looks  
like it's Lucene 2.1 that's trying to open a Lucene 2.2+ index.  The  
term infos file (.tii, .tis) changed from -2 -> -3 format in 2.3.

Mike

On Feb 25, 2008, at 7:19 AM, Paul Danese wrote:

> 2Unfortunately, the answer is "no".  I didn't use an upgraded  
> version of lucene or solr.  this is the bizzarre issue.  I'm  
> actually using solr via the acts_as_solr plugin used in ruby.
>
> At the time, I was adding a few 100-thousand docs to the  
> index...there appears to have been a memory leak as my app failed  
> with a java outofmemoryerror.  i stopped everything, ran an  
> "optimize index" and ever since then the index is unreadable via  
> solr...even though luke can see the index and search it quite easily.
>
>
>
> Walter Ferrara <wa...@gmail.com> wrote: did you create/modify  
> the index with a newer version of lucene than the
> one you use in solr?
> In this case I doubt you can downgrade your index, but maybe you can
> upgrade lucene in your solr (search in this forum, there should be a
> thread about this), (or try with the latest nightly builds)
>
> Paul Danese wrote:
>> 2Hi all,
>>
>> Is there any way to recover from such an error as listed in the  
>> subject heading?
>>
>> Luke can view the index just fine (at least at a cursory level  
>> Luke is able to open the index, give me back the # of docs, etc.),  
>> but solr throws this exception whenever I try and start it up.
>>
>> any ideas on how to proceed?
>> can I use luke or something else to "uncorrupt", modify or save my  
>> index into a non-corrupt format?
>>
>> TIA!!
>>
>>
>>  org.apache.solr.core.SolrException log
>> SEVERE: java.lang.RuntimeException:  
>> org.apache.lucene.index.CorruptIndexException: Unknown format  
>> version:-3
>>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java: 
>> 433)
>>         at org.apache.solr.core.SolrCore.(SolrCore.java:216)
>>         at org.apache.solr.core.SolrCore.getSolrCore(SolrCore.java: 
>> 177)
>>         at org.apache.solr.servlet.SolrDispatchFilter.init 
>> (SolrDispatchFilter.java:69)
>>         at org.mortbay.jetty.servlet.FilterHolder.doStart 
>> (FilterHolder.java:99)
>>         at org.mortbay.component.AbstractLifeCycle.start 
>> (AbstractLifeCycle.java:40)
>>         at org.mortbay.jetty.servlet.ServletHandler.initialize 
>> (ServletHandler.java:594)
>>         at org.mortbay.jetty.servlet.Context.startContext 
>> (Context.java:139)
>>         at org.mortbay.jetty.webapp.WebAppContext.startContext 
>> (WebAppContext.java:1218)
>>         at org.mortbay.jetty.handler.ContextHandler.doStart 
>> (ContextHandler.java:500)
>>         at org.mortbay.jetty.webapp.WebAppContext.doStart 
>> (WebAppContext.java:448)
>>         at org.mortbay.component.AbstractLifeCycle.start 
>> (AbstractLifeCycle.java:40)
>>         at org.mortbay.jetty.handler.HandlerCollection.doStart 
>> (HandlerCollection.java:147)
>>         at  
>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart 
>> (ContextHandlerCollection.java:161)
>>         at org.mortbay.component.AbstractLifeCycle.start 
>> (AbstractLifeCycle.java:40)
>>         at org.mortbay.jetty.handler.HandlerCollection.doStart 
>> (HandlerCollection.java:147)
>>         at org.mortbay.component.AbstractLifeCycle.start 
>> (AbstractLifeCycle.java:40)
>>         at org.mortbay.jetty.handler.HandlerWrapper.doStart 
>> (HandlerWrapper.java:117)
>>         at org.mortbay.jetty.Server.doStart(Server.java:210)
>>         at org.mortbay.component.AbstractLifeCycle.start 
>> (AbstractLifeCycle.java:40)
>>         at org.mortbay.xml.XmlConfiguration.main 
>> (XmlConfiguration.java:929)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native  
>> Method)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke 
>> (NativeMethodAccessorImpl.java:39)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke 
>> (DelegatingMethodAccessorImpl.java:25)
>>         at java.lang.reflect.Method.invoke(Method.java:585)
>>         at org.mortbay.start.Main.invokeMain(Main.java:183)
>>         at org.mortbay.start.Main.start(Main.java:497)
>>         at org.mortbay.start.Main.main(Main.java:115)
>> Caused by: org.apache.lucene.index.CorruptIndexException: Unknown  
>> format version:-3
>>         at org.apache.lucene.index.SegmentTermEnum. 
>> (SegmentTermEnum.java:64)
>>         at org.apache.lucene.index.TermInfosReader. 
>> (TermInfosReader.java:49)
>>         at org.apache.lucene.index.SegmentReader.initialize 
>> (SegmentReader.java:184)
>>         at org.apache.lucene.index.SegmentReader.get 
>> (SegmentReader.java:157)
>>         at org.apache.lucene.index.SegmentReader.get 
>> (SegmentReader.java:139)
>>         at org.apache.lucene.index.IndexReader$1.doBody 
>> (IndexReader.java:194)
>>         at org.apache.lucene.index.SegmentInfos 
>> $FindSegmentsFile.run(SegmentInfos.java:610)
>>         at org.apache.lucene.index.IndexReader.open 
>> (IndexReader.java:184)
>>         at org.apache.lucene.index.IndexReader.open 
>> (IndexReader.java:148)
>>         at org.apache.solr.search.SolrIndexSearcher. 
>> (SolrIndexSearcher.java:87)
>>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java: 
>> 424)
>>         ... 27 more
>>
>>
>>
>>
>>
>>
>> ---------------------------------
>> Be a better friend, newshound, and know-it-all with Yahoo!  
>> Mobile.  Try it now.
>>
>
>
>
>
>
> ---------------------------------
> Looking for last minute shopping deals?  Find them fast with Yahoo!  
> Search.


Re: CorruptIndexException: unknown format version: -3

Posted by Paul Danese <pd...@yahoo.com>.
2Unfortunately, the answer is "no".  I didn't use an upgraded version of lucene or solr.  this is the bizzarre issue.  I'm actually using solr via the acts_as_solr plugin used in ruby.  

At the time, I was adding a few 100-thousand docs to the index...there appears to have been a memory leak as my app failed with a java outofmemoryerror.  i stopped everything, ran an "optimize index" and ever since then the index is unreadable via solr...even though luke can see the index and search it quite easily.



Walter Ferrara <wa...@gmail.com> wrote: did you create/modify the index with a newer version of lucene than the 
one you use in solr?
In this case I doubt you can downgrade your index, but maybe you can 
upgrade lucene in your solr (search in this forum, there should be a 
thread about this), (or try with the latest nightly builds)

Paul Danese wrote:
> 2Hi all,
>
> Is there any way to recover from such an error as listed in the subject heading?
>
> Luke can view the index just fine (at least at a cursory level Luke is able to open the index, give me back the # of docs, etc.), but solr throws this exception whenever I try and start it up.
>
> any ideas on how to proceed?
> can I use luke or something else to "uncorrupt", modify or save my index into a non-corrupt format?
>
> TIA!!
>
>
>  org.apache.solr.core.SolrException log
> SEVERE: java.lang.RuntimeException: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:433)
>         at org.apache.solr.core.SolrCore.(SolrCore.java:216)
>         at org.apache.solr.core.SolrCore.getSolrCore(SolrCore.java:177)
>         at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:69)
>         at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:99)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:594)
>         at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
>         at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
>         at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
>         at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
>         at org.mortbay.jetty.Server.doStart(Server.java:210)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.mortbay.start.Main.invokeMain(Main.java:183)
>         at org.mortbay.start.Main.start(Main.java:497)
>         at org.mortbay.start.Main.main(Main.java:115)
> Caused by: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
>         at org.apache.lucene.index.SegmentTermEnum.(SegmentTermEnum.java:64)
>         at org.apache.lucene.index.TermInfosReader.(TermInfosReader.java:49)
>         at org.apache.lucene.index.SegmentReader.initialize(SegmentReader.java:184)
>         at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:157)
>         at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:139)
>         at org.apache.lucene.index.IndexReader$1.doBody(IndexReader.java:194)
>         at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:610)
>         at org.apache.lucene.index.IndexReader.open(IndexReader.java:184)
>         at org.apache.lucene.index.IndexReader.open(IndexReader.java:148)
>         at org.apache.solr.search.SolrIndexSearcher.(SolrIndexSearcher.java:87)
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:424)
>         ... 27 more
>
>
>
>
>
>        
> ---------------------------------
> Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.
>   




       
---------------------------------
Looking for last minute shopping deals?  Find them fast with Yahoo! Search.

Re: CorruptIndexException: unknown format version: -3

Posted by Walter Ferrara <wa...@gmail.com>.
did you create/modify the index with a newer version of lucene than the 
one you use in solr?
In this case I doubt you can downgrade your index, but maybe you can 
upgrade lucene in your solr (search in this forum, there should be a 
thread about this), (or try with the latest nightly builds)

Paul Danese wrote:
> 2Hi all,
>
> Is there any way to recover from such an error as listed in the subject heading?
>
> Luke can view the index just fine (at least at a cursory level Luke is able to open the index, give me back the # of docs, etc.), but solr throws this exception whenever I try and start it up.
>
> any ideas on how to proceed?
> can I use luke or something else to "uncorrupt", modify or save my index into a non-corrupt format?
>
> TIA!!
>
>
>  org.apache.solr.core.SolrException log
> SEVERE: java.lang.RuntimeException: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:433)
>         at org.apache.solr.core.SolrCore.<init>(SolrCore.java:216)
>         at org.apache.solr.core.SolrCore.getSolrCore(SolrCore.java:177)
>         at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:69)
>         at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:99)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:594)
>         at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
>         at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
>         at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
>         at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:147)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
>         at org.mortbay.jetty.Server.doStart(Server.java:210)
>         at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
>         at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.mortbay.start.Main.invokeMain(Main.java:183)
>         at org.mortbay.start.Main.start(Main.java:497)
>         at org.mortbay.start.Main.main(Main.java:115)
> Caused by: org.apache.lucene.index.CorruptIndexException: Unknown format version:-3
>         at org.apache.lucene.index.SegmentTermEnum.<init>(SegmentTermEnum.java:64)
>         at org.apache.lucene.index.TermInfosReader.<init>(TermInfosReader.java:49)
>         at org.apache.lucene.index.SegmentReader.initialize(SegmentReader.java:184)
>         at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:157)
>         at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:139)
>         at org.apache.lucene.index.IndexReader$1.doBody(IndexReader.java:194)
>         at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:610)
>         at org.apache.lucene.index.IndexReader.open(IndexReader.java:184)
>         at org.apache.lucene.index.IndexReader.open(IndexReader.java:148)
>         at org.apache.solr.search.SolrIndexSearcher.<init>(SolrIndexSearcher.java:87)
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:424)
>         ... 27 more
>
>
>
>
>
>        
> ---------------------------------
> Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.
>