lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GitBox <...@apache.org>
Subject [GitHub] [lucenenet] NightOwl888 opened a new pull request #444: Reverted FieldCacheImpl Locking (Closes #272)
Date Mon, 15 Mar 2021 15:13:15 GMT

NightOwl888 opened a new pull request #444:
URL: https://github.com/apache/lucenenet/pull/444


   This reverts the changes to locking in `FieldCacheImpl` that were introduced to attempt
to reduce locking. It is clear that we need to rule out concurrency differences from Lucene
such as this in order to get to the bottom of our locking contention issues during testing.
   
   The 2 main things that were changed were:
   
   1. Restore locks back to the Lucene 4.8.0 state, including replacing some missing locks.
   2. Changed from using `ConcurrentDictionary<TKey, TValue>` back to `Dictionary<TKey,
TValue>` because it adds unnecessary overhead.
   
   As for #272, much of the locking contention has been reduced by using `ConditionalWeakTable<TKey,
TValue>` rather than `WeakDictionary<TKey, TValue>` in .NET Standard 2.1+. In addition,
we have made several other performance improvements since the report, which should also help
to reduce locking in `FieldCacheImpl::Get()`. 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



Mime
View raw message