Hi,

    What scenarios would solr warn about "ExitableDirectoryReader" ? I see
several "ExitableDirectoryReader$ExitingReaderException: The request took
too long to iterate over terms.". What causes this this? Is it a shard size
issue or lack of any resources, heap, ram or cpu?  .

Log snippets -

org.apache.lucene.index.ExitableDirectoryReader$ExitingReaderException:
The request took too long to iterate over terms. Timeout: timeoutAt:
2101774016440850 (System.nanoTime(): 2101774068035377),
TermsEnum=org.apache.lucene.codecs.lucene90.blocktree.SegmentTermsEnum@79b2db56
        at 
org.apache.lucene.index.ExitableDirectoryReader$ExitableTermsEnum.checkTimeoutWithSampling(ExitableDirectoryReader.java:749)
        at 
org.apache.lucene.index.ExitableDirectoryReader$ExitableTermsEnum.<init>(ExitableDirectoryReader.java:737)
        at 
org.apache.lucene.index.ExitableDirectoryReader$ExitableTerms.iterator(ExitableDirectoryReader.java:719)
        at org.apache.lucene.index.TermStates.loadTermsEnum(TermStates.java:116)
        at org.apache.lucene.index.TermStates.build(TermStates.java:102)
        at org.apache.lucene.search.PhraseQuery$1.getStats(PhraseQuery.java:461)
        at org.apache.lucene.search.PhraseWeight.<init>(PhraseWeight.java:44)
        at org.apache.lucene.search.PhraseQuery$1.<init>(PhraseQuery.java:441)
        at 
org.apache.lucene.search.PhraseQuery.createWeight(PhraseQuery.java:441)
        at org.apache.lucene.search.BoostQuery.createWeight(BoostQuery.java:124)
        at 
org.apache.lucene.search.IndexSearcher.createWeight(IndexSearcher.java:869)
        at org.apache.lucene.search.BooleanWeight.<init>(BooleanWeight.java:59)
        at 
org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:237)
        at 
org.apache.lucene.queries.function.FunctionScoreQuery.createWeight(FunctionScoreQuery.java:113)


(from a different time window)


org.apache.lucene.index.ExitableDirectoryReader$ExitingReaderException:
The request took too long to iterate over doc values. Timeout:
timeoutAt: 2103004456482731 (System.nanoTime(): 2103004484203805),
DocValues=org.apache.lucene.codecs.lucene90.Lucene90DocValuesProducer$2@2e1600c4
        at 
org.apache.lucene.index.ExitableDirectoryReader$ExitableFilterAtomicReader.checkAndThrow(ExitableDirectoryReader.java:394)
        at 
org.apache.lucene.index.ExitableDirectoryReader$ExitableFilterAtomicReader$1.advance(ExitableDirectoryReader.java:124)
        at 
org.apache.lucene.queries.function.valuesource.IntFieldSource$1.exists(IntFieldSource.java:81)
        at 
org.apache.lucene.queries.function.valuesource.MinFloatFunction.func(MinFloatFunction.java:39)
        at 
org.apache.lucene.queries.function.valuesource.MultiFloatFunction$1.floatVal(MultiFloatFunction.java:83)
        at 
org.apache.lucene.queries.function.valuesource.SumFloatFunction.func(SumFloatFunction.java:38)
        at 
org.apache.lucene.queries.function.valuesource.MultiFloatFunction$1.floatVal(MultiFloatFunction.java:83)
        at 
org.apache.lucene.queries.function.docvalues.FloatDocValues.doubleVal(FloatDocValues.java:66)
        at 
org.apache.solr.search.ValueSourceParser$33.func(ValueSourceParser.java:587)
        at 
org.apache.solr.search.ValueSourceParser$DoubleParser$Function$1.doubleVal(ValueSourceParser.java:1666)
        at 
org.apache.lucene.queries.function.docvalues.DoubleDocValues.floatVal(DoubleDocValues.java:51)
        at 
org.apache.lucene.queries.function.valuesource.ProductFloatFunction.func(ProductFloatFunction.java:38)
        at 
org.apache.lucene.queries.function.valuesource.MultiFloatFunction$1.floatVal(MultiFloatFunction.java:83)
        at 
org.apache.lucene.queries.function.FunctionQuery$AllScorer.score(FunctionQuery.java:126)
        at 
org.apache.lucene.search.DisjunctionSumScorer.score(DisjunctionSumScorer.java:41)

Reply via email to