2012-01-10 186 views
1

当我在我的solr中尝试搜索查询时,出现以下错误,我不确定可能是什么原因造成的,但是这已经停止了我们所有的工作。Solr搜索:SEVERE:java.lang.ArrayIndexOutOfBoundsException:-1

此查询的工作:

http://10.0.0.13:8080/solr/cmn/select/?q=*:*&fl=searchText&rows=40000 

但这:

http://10.0.0.13:8080/solr/cmn/select/?q=solr 

不工作,并给出了以下异常:

SEVERE: java.lang.ArrayIndexOutOfBoundsException: -1 
    at org.apache.lucene.util.packed.Packed64.get(Packed64.java:186) 
at org.apache.lucene.index.TermInfosReaderIndex.seekEnum(TermInfosReaderIndex.java:118) 
    at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:235) 
    at org.apache.lucene.index.TermInfosReader.get(TermInfosReader.java:172) 
    at org.apache.lucene.index.SegmentReader.docFreq(SegmentReader.java:509) 
    at org.apache.solr.search.SolrIndexReader.docFreq(SolrIndexReader.java:309) 
    at org.apache.lucene.search.TermQuery$TermWeight$1.add(TermQuery.java:56) 
    at org.apache.lucene.util.ReaderUtil$Gather.run(ReaderUtil.java:77) 
    at org.apache.lucene.util.ReaderUtil$Gather.run(ReaderUtil.java:82) 
    at org.apache.lucene.util.ReaderUtil$Gather.run(ReaderUtil.java:66) 
    at org.apache.lucene.search.TermQuery$TermWeight.<init>(TermQuery.java:53) 
    at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:199) 
    at org.apache.lucene.search.Searcher.createNormalizedWeight(Searcher.java:168) 
    at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:664) 

问候, 罗希特

+0

你运行的是什么版本的Solr? – 2012-01-10 07:23:57

+0

我们正在运行solr版本3.1 – sesmic 2012-01-10 07:34:19

回答

1

该指数已经坠毁由于到tomcat的关机不当,虽然使用以下命令的错误并不反映相同的,固定的指数,

java -cp ./example/work/Jetty_0_0_0_0_8983_solr.war__solr__k1kf17/webapp/WEB-INF/lib/lucene-core-3.1.0.jar -ea:org.apache.lucene... org.apache.lucene.index.CheckIndex "D:\Brandmanagement\solr\example\simplify360\crss\data\index" -fix 

这本来是有益的,如果Solr的会抛出异常准确指数崩溃。索引崩溃问题已经在我猜想的3.4版本中解决了。