Uh oh!
There was an error while loading. Please reload this page.
Fixing concurrency issue in Memory Cache - #266
Conversation
I'm seeing some System.IndexOutOfRangeException exceptions in our application caused by corruption of the child regions HashSet. This appears to be caused by concurrent writes to the data structure. I'm replacing the HashSet with a ConcurrentDictionary. This isn't ideal as each key also has to store a bogus value, but there is no builtin concurrent HashSet and this seemed to be a better solution than explicit locking.
DamianKedzior
commented
Sep 10, 2019
Hi @MichaCo, |
MichaConrad
commented
Sep 10, 2019
Hey, But, I'll try to find some time and get a new release out with this and some other minor things as soon™ as I can |
tynorton
commented
Dec 5, 2019
When can we get an updated NuGet with this fix? Problem is affecting us. |
pergardebrink
commented
Jul 29, 2020
We hit the problem as well with the same exception (tried to move to this because of #313). Is it possible to get a new release of 1.x? Or the 2.0 with netstandard2.0 support for System.RuntimeCaching? Can I/we help out in any way? |
pergardebrink
commented
Nov 13, 2020
Just wondering if there's anything I can do to help with getting this out into 1.2 or 2.0 in some way? I'm trying to move some stuff from .NET Framework to .NET Core/.NET 5 and got stuck in between this issue here and #313 .. Or is there any other way of getting a memory cache in CacheManager when targeting .NET Core/._NET 5? |
NinjaCross
commented
Mar 2, 2022
Are there news about this ? |
I'm seeing some System.IndexOutOfRangeException exceptions in our
application caused by corruption of the child regions HashSet. This
appears to be caused by concurrent writes to the data structure. I'm
replacing the HashSet with a ConcurrentDictionary. This isn't ideal as
each key also has to store a bogus value, but there is no builtin
concurrent HashSet and this seemed to be a better solution than explicit
locking.