Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-17280

SolrRangeQuery can trigger "IllegalStateException: Recursive update" in CaffeineCache / ConcurrentHashMap

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      Sample stacktrace...

        2>           => java.lang.IllegalStateException: Recursive update
        2>    at java.base/java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1063)
        2> java.lang.IllegalStateException: Recursive update
        2>    at java.base/java.util.concurrent.ConcurrentHashMap.putVal(ConcurrentHashMap.java:1063) ~[?:?]
        2>    at java.base/java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1541) ~[?:?]
        2>    at com.github.benmanes.caffeine.cache.BoundedLocalCache.put(BoundedLocalCache.java:2312) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at com.github.benmanes.caffeine.cache.BoundedLocalCache.put(BoundedLocalCache.java:2278) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at org.apache.solr.search.CaffeineCache.put(CaffeineCache.java:277) ~[main/:?]
        2>    at org.apache.solr.query.SolrRangeQuery$ConstWeight.getSegState(SolrRangeQuery.java:482) ~[main/:?]
        2>    at org.apache.solr.query.SolrRangeQuery$ConstWeight.scorer(SolrRangeQuery.java:552) ~[main/:?]
        2>    at org.apache.lucene.search.Weight.scorerSupplier(Weight.java:135) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.lucene.search.BooleanWeight.requiredBulkScorer(BooleanWeight.java:289) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.lucene.search.BooleanWeight.booleanScorer(BooleanWeight.java:402) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.lucene.search.BooleanWeight.bulkScorer(BooleanWeight.java:443) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:737) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:720) ~[main/:?]
        2>    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:552) ~[lucene-core-9.10.0.jar:9.10.0 695c0ac84508438302cd346a812cfa2fdc5a10df - 2024-02-14 16:48:06]
        2>    at org.apache.solr.search.DocSetUtil.createDocSetGeneric(DocSetUtil.java:154) ~[main/:?]
        2>    at org.apache.solr.search.DocSetUtil.createDocSet(DocSetUtil.java:141) ~[main/:?]
        2>    at org.apache.solr.search.SolrIndexSearcher.getDocSetNC(SolrIndexSearcher.java:1387) ~[main/:?]
        2>    at org.apache.solr.search.SolrIndexSearcher.lambda$getAndCacheDocSet$1(SolrIndexSearcher.java:991) ~[main/:?]
        2>    at org.apache.solr.search.CaffeineCache.lambda$computeIfAbsent$1(CaffeineCache.java:258) ~[main/:?]
        2>    at com.github.benmanes.caffeine.cache.LocalCache.lambda$statsAware$2(LocalCache.java:167) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2688) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1908) ~[?:?]
        2>    at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2686) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2669) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:112) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at com.github.benmanes.caffeine.cache.LocalManualCache.get(LocalManualCache.java:62) ~[caffeine-3.1.8.jar:3.1.8]
        2>    at org.apache.solr.search.CaffeineCache.computeIfAbsent(CaffeineCache.java:253) ~[main/:?]
        2>    at org.apache.solr.search.SolrIndexSearcher.getAndCacheDocSet(SolrIndexSearcher.java:991) ~[main/:?]
        2>    at org.apache.solr.search.SolrIndexSearcher.getPositiveDocSet(SolrIndexSearcher.java:946) ~[main/:?]
        2>    at org.apache.solr.search.SolrIndexSearcher.numDocs(SolrIndexSearcher.java:2367) ~[main/:?]
        2>    at org.apache.solr.request.SimpleFacets.getFacetQueryCount(SimpleFacets.java:320) ~[main/:?]
        2>    at org.apache.solr.request.SimpleFacets.getFacetQueryCounts(SimpleFacets.java:302) ~[main/:?]
        2>    at org.apache.solr.handler.component.FacetComponent.getFacetCounts(FacetComponent.java:331) ~[main/:?]
        2>    at org.apache.solr.handler.component.FacetComponent.process(FacetComponent.java:279) ~[main/:?]
        2>    at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:466) ~[main/:?]
        2>    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:238) ~[main/:?]
        2>    at org.apache.solr.core.SolrCore.execute(SolrCore.java:2886) ~[main/:?]
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              hossman Chris M. Hostetter
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: