diff options
| author | Dan Engelbrecht <[email protected]> | 2022-04-26 13:36:02 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-04-26 13:36:02 +0200 |
| commit | f7476199742256fed6f867afb6db8cecdacfe547 (patch) | |
| tree | 43cc47fdc9fea18668e7f6ce95f9a84851fa33dc /zenserver/cache/structuredcachestore.cpp | |
| parent | Compute tweaks (#78) (diff) | |
| download | zen-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.cpp | 9 |
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); |