diff options
Diffstat (limited to 'zenstore/compactcas.cpp')
| -rw-r--r-- | zenstore/compactcas.cpp | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/zenstore/compactcas.cpp b/zenstore/compactcas.cpp index 519478356..d0c2f59ac 100644 --- a/zenstore/compactcas.cpp +++ b/zenstore/compactcas.cpp @@ -176,7 +176,6 @@ CasContainerStrategy::InsertChunk(const void* ChunkData, size_t ChunkSize, const m_LocationMap.emplace(ChunkHash, DiskLocation); } }); - m_TotalSize.fetch_add(static_cast<uint64_t>(ChunkSize), std::memory_order::relaxed); return CasStore::InsertResult{.New = true}; } @@ -484,8 +483,6 @@ CasContainerStrategy::CollectGarbage(GcContext& GcCtx) if (Entry.Flags & CasDiskIndexEntry::kTombstone) { m_LocationMap.erase(Entry.Key); - uint64_t ChunkSize = Entry.Location.GetSize(); - m_TotalSize.fetch_sub(ChunkSize); continue; } m_LocationMap[Entry.Key] = Entry.Location; @@ -686,7 +683,6 @@ void CasContainerStrategy::OpenContainer(bool IsNewStore) { // Add .running file and delete on clean on close to detect bad termination - m_TotalSize = 0; m_LocationMap.clear(); @@ -710,7 +706,6 @@ CasContainerStrategy::OpenContainer(bool IsNewStore) for (const auto& Entry : m_LocationMap) { const BlockStoreDiskLocation& Location = Entry.second; - m_TotalSize.fetch_add(Location.GetSize(), std::memory_order::relaxed); KnownLocations.push_back(Location.Get(m_PayloadAlignment)); } @@ -991,8 +986,6 @@ TEST_CASE("compactcas.gc.compact") CHECK(Cas.HaveChunk(ChunkHashes[7])); CHECK(Cas.HaveChunk(ChunkHashes[8])); - uint64_t InitialSize = Cas.StorageSize().DiskSize; - // Keep first and last { GcContext GcCtx; @@ -1018,15 +1011,15 @@ TEST_CASE("compactcas.gc.compact") CHECK(ChunkHashes[0] == IoHash::HashBuffer(Cas.FindChunk(ChunkHashes[0]))); CHECK(ChunkHashes[8] == IoHash::HashBuffer(Cas.FindChunk(ChunkHashes[8]))); - } - Cas.InsertChunk(Chunks[1], ChunkHashes[1]); - Cas.InsertChunk(Chunks[2], ChunkHashes[2]); - Cas.InsertChunk(Chunks[3], ChunkHashes[3]); - Cas.InsertChunk(Chunks[4], ChunkHashes[4]); - Cas.InsertChunk(Chunks[5], ChunkHashes[5]); - Cas.InsertChunk(Chunks[6], ChunkHashes[6]); - Cas.InsertChunk(Chunks[7], ChunkHashes[7]); + Cas.InsertChunk(Chunks[1], ChunkHashes[1]); + Cas.InsertChunk(Chunks[2], ChunkHashes[2]); + Cas.InsertChunk(Chunks[3], ChunkHashes[3]); + Cas.InsertChunk(Chunks[4], ChunkHashes[4]); + Cas.InsertChunk(Chunks[5], ChunkHashes[5]); + Cas.InsertChunk(Chunks[6], ChunkHashes[6]); + Cas.InsertChunk(Chunks[7], ChunkHashes[7]); + } // Keep last { @@ -1177,9 +1170,6 @@ TEST_CASE("compactcas.gc.compact") CHECK(ChunkHashes[6] == IoHash::HashBuffer(Cas.FindChunk(ChunkHashes[6]))); CHECK(ChunkHashes[7] == IoHash::HashBuffer(Cas.FindChunk(ChunkHashes[7]))); CHECK(ChunkHashes[8] == IoHash::HashBuffer(Cas.FindChunk(ChunkHashes[8]))); - - uint64_t FinalSize = Cas.StorageSize().DiskSize; - CHECK(InitialSize == FinalSize); } } @@ -1346,7 +1336,8 @@ TEST_CASE("compactcas.threadedinsert") WorkCompleted = 0; const uint64_t TotalSize = Cas.StorageSize().DiskSize; - CHECK_EQ(ExpectedSize, TotalSize); + CHECK_LE(ExpectedSize, TotalSize); + CHECK_GE(ExpectedSize + 32768, TotalSize); { for (const auto& Chunk : Chunks) |