[
https://issues.apache.org/jira/browse/SOLR-15555?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17415097#comment-17415097
]
ASF subversion and git services commented on SOLR-15555:
--------------------------------------------------------
Commit ac5df2272a997307787dd06bad6a3a4e4251bb48 in lucene-solr's branch
refs/heads/branch_8x from Mike Drob
[ https://gitbox.apache.org/repos/asf?p=lucene-solr.git;h=ac5df22 ]
SOLR-15555 Improved caching on FilterQuery (#2572)
Create a new cache mode for CaffeineCache where we can optionally use an
async cache instead of the synchronous implementation. This is useful
for cases (esp FilterQuery) where many identical requests come in near
the same time and they would otherwise race to fill the same cache slot.
CaffeineCache computeIfAbsent now accepts an IOFunction instead of
the non-throwing java.util.Function interface.
This required an update to CaffeineCache 2.9, which updates putIfAbsent
with an optimistic get.
Also incidentally fixes a rare bug where cache ramBytesUsed would be
incorrectly reported under heavy cache contention/eviction loads.
Makes Async Caches the default.
> Use filterCache.computeIfAbsent in SolrIndexSearcher
> ----------------------------------------------------
>
> Key: SOLR-15555
> URL: https://issues.apache.org/jira/browse/SOLR-15555
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Reporter: Mike Drob
> Priority: Major
> Time Spent: 5.5h
> Remaining Estimate: 0h
>
> When multiple concurrent queries come in at the same time, in several cases
> they can trigger concurrent computations of a DocSet for the cache. We should
> investigate where this happens and possibly take care to only do a single
> computation when possible.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]