I'm trying to write some tests for SOLR-418 and I can't tell if this is
a real error or that I'm using the TestHarness incorrectly. I don't see
this error running the site normally.
The test is setup like this:
1. add docs and commit
2. query check results
3. query check results
...
The second query throws an 'AlreadyClosedException' -- running either
query independently works fine.
Both queries access a field cache through a ScoreDocComparator:
final FieldCache.StringIndex index =
FieldCache.DEFAULT.getStringIndex(reader, fieldname);
Any ideas what I am doing wrong?
Here is the full stack trace:
SEVERE: org.apache.lucene.store.AlreadyClosedException: this IndexReader
is closed
at org.apache.lucene.index.IndexReader.ensureOpen(IndexReader.java:128)
at org.apache.lucene.index.SegmentReader.docFreq(SegmentReader.java:351)
at org.apache.lucene.search.IndexSearcher.docFreq(IndexSearcher.java:87)
at org.apache.lucene.search.Similarity.idf(Similarity.java:459)
at
org.apache.lucene.search.TermQuery$TermWeight.<init>(TermQuery.java:44)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:145)
at
org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:187)
at
org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:353)
at org.apache.lucene.search.Query.weight(Query.java:95)
at org.apache.lucene.search.Searcher.createWeight(Searcher.java:171)
at org.apache.lucene.search.Searcher.search(Searcher.java:118)
at org.apache.lucene.search.Searcher.search(Searcher.java:97)
at
org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:864)
at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:808)
at
org.apache.solr.search.SolrIndexSearcher.getDocList(SolrIndexSearcher.java:693)
at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:107)
at
org.apache.solr.handler.SearchHandler.handleRequestBody(SearchHandler.java:155)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:117)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:866)
at org.apache.solr.util.TestHarness.query(TestHarness.java:269)
at org.apache.solr.util.TestHarness.query(TestHarness.java:254)
at
org.apache.solr.util.AbstractSolrTestCase.assertQ(AbstractSolrTestCase.java:175)
at
org.apache.solr.handler.component.QueryBoostingComponentTest.testSorting(QueryBoostingComponentTest.java:136)