From 012997d5eb4dd8f0ebbfa9e1726f2b0a3445ac28 Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Mon, 23 Aug 2021 19:11:04 +0200 Subject: Improved ZenCacheStore::DropBucket logic and added logging --- zenserver/cache/structuredcachestore.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'zenserver/cache/structuredcachestore.cpp') diff --git a/zenserver/cache/structuredcachestore.cpp b/zenserver/cache/structuredcachestore.cpp index fe662267c..c0584aac3 100644 --- a/zenserver/cache/structuredcachestore.cpp +++ b/zenserver/cache/structuredcachestore.cpp @@ -84,9 +84,15 @@ ZenCacheStore::Put(std::string_view InBucket, const zen::IoHash& HashKey, const bool ZenCacheStore::DropBucket(std::string_view Bucket) { + spdlog::info("dropping bucket '{}'", Bucket); + // TODO: should ensure this is done atomically across all layers - return m_MemLayer.DropBucket(Bucket) && m_DiskLayer.DropBucket(Bucket); + const bool WasDropped = m_MemLayer.DropBucket(Bucket) || m_DiskLayer.DropBucket(Bucket); + + spdlog::info("bucket '{}' was {}", Bucket, WasDropped ? "dropped" : "not found"); + + return WasDropped; } void @@ -166,9 +172,7 @@ ZenCacheMemoryLayer::DropBucket(std::string_view Bucket) { RwLock::ExclusiveLockScope _(m_Lock); - m_Buckets.erase(std::string(Bucket)); - - return true; + return !!m_Buckets.erase(std::string(Bucket)); } bool -- cgit v1.2.3