aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2022-05-01 23:38:59 +0200
committerDan Engelbrecht <[email protected]>2022-05-01 23:40:23 +0200
commitb5f5b1e792a559d0358ab8a755b335cfb2185e9f (patch)
treecaaa207cd78cd0dc309d81d558fcb74b3433c1c0
parentrespect Ctx.RunRecovery() (diff)
downloadzen-b5f5b1e792a559d0358ab8a755b335cfb2185e9f.tar.xz
zen-b5f5b1e792a559d0358ab8a755b335cfb2185e9f.zip
cleanup
-rw-r--r--zenstore/blockstore.cpp16
-rw-r--r--zenstore/include/zenstore/blockstore.h21
2 files changed, 20 insertions, 17 deletions
diff --git a/zenstore/blockstore.cpp b/zenstore/blockstore.cpp
index 559dfc1ee..9961e734d 100644
--- a/zenstore/blockstore.cpp
+++ b/zenstore/blockstore.cpp
@@ -194,7 +194,7 @@ BlockStore::Initialize(const std::filesystem::path& BlocksBasePath,
}
void
-BlockStore::WriteChunk(const void* Data, uint64_t Size, uint64_t Alignment, WriteCompleteCallback Callback)
+BlockStore::WriteChunk(const void* Data, uint64_t Size, uint64_t Alignment, WriteChunkCallback Callback)
{
RwLock::ExclusiveLockScope InsertLock(m_InsertLock);
@@ -584,9 +584,9 @@ BlockStore::ReclaimSpace(const ReclaimSnapshotState& Snapshot,
}
void
-BlockStore::IterateChunks(const std::vector<BlockStoreLocation>& ChunkLocations,
- std::function<void(size_t ChunkIndex, const void* Data, uint64_t Size)> SmallChunkCallback,
- std::function<void(size_t ChunkIndex, BasicFile& BlockFile, uint64_t Offset, uint64_t Size)> LargeChunkCallback)
+BlockStore::IterateChunks(const std::vector<BlockStoreLocation>& ChunkLocations,
+ IterateChunksSmallSizeCallback SmallSizeCallback,
+ IterateChunksLargeSizeCallback LargeSizeCallback)
{
// We do a read sweep through the payloads file and validate
// any entries that are contained within each segment, with
@@ -637,9 +637,9 @@ BlockStore::IterateChunks(const std::vector<BlockStoreLocation>&
continue;
}
- SmallChunkCallback(ChunkIndex,
- reinterpret_cast<uint8_t*>(BufferBase) + Location.Offset - WindowStart,
- Location.Size);
+ SmallSizeCallback(ChunkIndex,
+ reinterpret_cast<uint8_t*>(BufferBase) + Location.Offset - WindowStart,
+ Location.Size);
}
}
@@ -654,7 +654,7 @@ BlockStore::IterateChunks(const std::vector<BlockStoreLocation>&
{
const BlockStoreLocation Location = ChunkLocations[ChunkIndex];
BasicFile& BlockFile = m_ChunkBlocks[Location.BlockIndex]->GetBasicFile();
- LargeChunkCallback(ChunkIndex, BlockFile, Location.Offset, Location.Size);
+ LargeSizeCallback(ChunkIndex, BlockFile, Location.Offset, Location.Size);
}
}
}
diff --git a/zenstore/include/zenstore/blockstore.h b/zenstore/include/zenstore/blockstore.h
index 5af416b59..21c02d389 100644
--- a/zenstore/include/zenstore/blockstore.h
+++ b/zenstore/include/zenstore/blockstore.h
@@ -6,6 +6,7 @@
#include <zencore/zencore.h>
#include <zenstore/basicfile.h>
+#include <unordered_map>
#include <unordered_set>
namespace zen {
@@ -119,18 +120,20 @@ public:
typedef std::function<void(uint32_t BlockIndex,
const std::unordered_map<size_t, BlockStoreLocation>& MovedChunks,
const std::vector<size_t>& RemovedChunks)>
- ReclaimCallback;
- typedef std::function<void(const BlockStoreLocation& Location)> WriteCompleteCallback;
+ ReclaimCallback;
+ typedef std::function<void(const BlockStoreLocation& Location)> WriteChunkCallback;
+ typedef std::function<void(size_t ChunkIndex, const void* Data, uint64_t Size)> IterateChunksSmallSizeCallback;
+ typedef std::function<void(size_t ChunkIndex, BasicFile& BlockFile, uint64_t Offset, uint64_t Size)> IterateChunksLargeSizeCallback;
void Initialize(const std::filesystem::path& BlocksBasePath,
uint64_t MaxBlockSize,
uint64_t MaxBlockCount,
const std::vector<BlockStoreLocation>& KnownLocations);
void WriteChunk(
- const void* Data,
- uint64_t Size,
- uint64_t Alignment,
- WriteCompleteCallback Callback = [](const BlockStoreLocation&) {});
+ const void* Data,
+ uint64_t Size,
+ uint64_t Alignment,
+ WriteChunkCallback Callback = [](const BlockStoreLocation&) {});
Ref<BlockStoreFile> GetChunkBlock(const BlockStoreLocation& Location);
void Flush();
@@ -143,9 +146,9 @@ public:
bool DryRun,
const ReclaimCallback& Callback = [](uint32_t, const std::unordered_map<size_t, BlockStoreLocation>&, const std::vector<size_t>&) {
});
- void IterateChunks(const std::vector<BlockStoreLocation>& ChunkLocations,
- std::function<void(size_t ChunkIndex, const void* Data, uint64_t Size)> SmallChunkCallback,
- std::function<void(size_t ChunkIndex, BasicFile& BlockFile, uint64_t Offset, uint64_t Size)> LargeChunkCallback);
+ void IterateChunks(const std::vector<BlockStoreLocation>& ChunkLocations,
+ IterateChunksSmallSizeCallback SmallSizeCallback,
+ IterateChunksLargeSizeCallback LargeSizeCallback);
static const char* GetBlockFileExtension();
static std::filesystem::path GetBlockPath(const std::filesystem::path& BlocksBasePath, const uint32_t BlockIndex);