Details
-
Bug
-
Status: Patch Available
-
Major
-
Resolution: Unresolved
-
9.0, 8.11.2
-
None
-
None
Description
Under heavy machine load, accessing any Solr CaffeineCache can lead to threads spinning in an endless loop. In our setup we had machines spinning at 70% cpu load without receiving any request for hours.
Background
The problem is caused by delegating the SolrCache#put method to Cache#asMap#put Under heavy machine load with concurrent read and write access to the same key, the ConcurrentHashMap#put method does not terminate an endless loop.
Implementation
This problem can be easy be solved by delegating the CaffeineCache#put method to Cache#asMap#compute which uses a producer pattern. After introducing the fix to our environment we were not able to reproduce this error pattern.
Github Pull Request: https://github.com/apache/solr/pull/1118
Attachments
Issue Links
- is related to
-
SOLR-16509 All query classes should be immutable
- Patch Available
-
SOLR-16562 Upgrade to Caffeine 3.1.4
- Closed
- links to