aboutsummaryrefslogtreecommitdiff
path: root/zenserver/cache/structuredcachestore.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2022-04-26 13:36:02 +0200
committerGitHub <[email protected]>2022-04-26 13:36:02 +0200
commitf7476199742256fed6f867afb6db8cecdacfe547 (patch)
tree43cc47fdc9fea18668e7f6ce95f9a84851fa33dc /zenserver/cache/structuredcachestore.cpp
parentCompute tweaks (#78) (diff)
downloadzen-f7476199742256fed6f867afb6db8cecdacfe547.tar.xz
zen-f7476199742256fed6f867afb6db8cecdacfe547.zip
Batch log removal of Cid and take proper lock when modifying m_CidMap (#80)v1.0.0.4
* Batch log removal of Cid and take proper lock when modifying m_CidMap * variable name casing * Don't access m_Buckets without a lock
Diffstat (limited to 'zenserver/cache/structuredcachestore.cpp')
-rw-r--r--zenserver/cache/structuredcachestore.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/zenserver/cache/structuredcachestore.cpp b/zenserver/cache/structuredcachestore.cpp
index 738e4c1fd..6bf513105 100644
--- a/zenserver/cache/structuredcachestore.cpp
+++ b/zenserver/cache/structuredcachestore.cpp
@@ -1255,10 +1255,10 @@ ZenCacheDiskLayer::Put(std::string_view InBucket, const IoHash& HashKey, const Z
auto It = m_Buckets.try_emplace(BucketName, BucketName);
Bucket = &It.first->second;
- std::filesystem::path bucketPath = m_RootDir;
- bucketPath /= BucketName;
+ std::filesystem::path BucketPath = m_RootDir;
+ BucketPath /= BucketName;
- Bucket->OpenOrCreate(bucketPath);
+ Bucket->OpenOrCreate(BucketPath);
}
}
@@ -1363,11 +1363,12 @@ void
ZenCacheDiskLayer::Flush()
{
std::vector<CacheBucket*> Buckets;
- Buckets.reserve(m_Buckets.size());
+
{
RwLock::SharedLockScope _(m_Lock);
+ Buckets.reserve(m_Buckets.size());
for (auto& Kv : m_Buckets)
{
Buckets.push_back(&Kv.second);