Luke Kot-Zaniewski created SOLR-17863:
-----------------------------------------
Summary: SolrCore's perSegmentFingerprintCache Is Not Threadsafe
Key: SOLR-17863
URL: https://issues.apache.org/jira/browse/SOLR-17863
Project: Solr
Issue Type: Bug
Affects Versions: 9.8.1, 9.3
Reporter: Luke Kot-Zaniewski
Attachments: image-2025-08-14-11-29-04-739.png,
image-2025-08-14-11-29-42-832.png
SOLR-16713 introduced a race condition into the perSegmentFingerprintCache as
it changed it from the [thread-safe guava implementation to the thread-UNSAFE
WeakHashMap|https://github.com/apache/solr/commit/375ac647ad507638686848c549c30e6c077dca1b#diff-3bf44f923643744a743460bb0f64301618dd7529a602d945fe2f7f193d4cdde0].
This flew under the radar for some time because this map previously had very
little contention between threads. However after SOLR-17756 we turbo-charged
the race since we know parallelize at a much more granular level upstream of
this call. The net effect is that WeakHashMap:put can get stuck in an
infinite-loop (probably due to a cycle in the underlying linked-list that it
modifies):
!image-2025-08-14-11-29-04-739.png!
!image-2025-08-14-11-29-42-832.png!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]