Skip to content

Commit 94725ce

Browse files
committed
fix Fifo & Lru CacheKey exists bug
1 parent c35c3d4 commit 94725ce

File tree

3 files changed

+13
-5
lines changed

3 files changed

+13
-5
lines changed

build/version.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<PropertyGroup>
33
<VersionMajor>4</VersionMajor>
44
<VersionMinor>0</VersionMinor>
5-
<VersionPatch>11</VersionPatch>
5+
<VersionPatch>12</VersionPatch>
66
<VersionPrefix>$(VersionMajor).$(VersionMinor).$(VersionPatch)</VersionPrefix>
77
</PropertyGroup>
88
</Project>

src/SmartSql/Cache/Default/FifoCacheProvider.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,17 @@ public bool TryAdd(CacheKey cacheKey, object cacheItem)
4141
{
4242
lock (this)
4343
{
44+
if (_cache.ContainsKey(cacheKey))
45+
{
46+
return false;
47+
}
48+
_cacheKeys.Enqueue(cacheKey);
49+
_cache.Add(cacheKey, cacheItem);
4450
if (_cacheKeys.Count > _cacheSize)
4551
{
4652
var removedKey = _cacheKeys.Dequeue();
4753
_cache.Remove(removedKey);
4854
}
49-
_cacheKeys.Enqueue(cacheKey);
50-
_cache.Add(cacheKey, cacheItem);
5155
}
5256
return true;
5357
}

src/SmartSql/Cache/Default/LruCacheProvider.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,18 @@ public bool TryAdd(CacheKey cacheKey, object cacheItem)
4242
{
4343
lock (this)
4444
{
45+
if (_cache.ContainsKey(cacheKey))
46+
{
47+
return false;
48+
}
49+
_cache.Add(cacheKey, cacheItem);
50+
_cacheKeys.Add(cacheKey);
4551
if (_cacheKeys.Count > _cacheSize)
4652
{
4753
var removedKey = _cacheKeys[0];
4854
_cacheKeys.RemoveAt(0);
4955
_cache.Remove(removedKey);
5056
}
51-
_cache.Add(cacheKey, cacheItem);
52-
_cacheKeys.Add(cacheKey);
5357
}
5458
return true;
5559
}

0 commit comments

Comments
 (0)