diff options
| author | Stefan Boberg <[email protected]> | 2021-08-23 19:12:14 +0200 |
|---|---|---|
| committer | Stefan Boberg <[email protected]> | 2021-08-23 19:12:14 +0200 |
| commit | 9497ba8cba4347112e4335ca02d143aec8a45f24 (patch) | |
| tree | 7c625a69063fc6aecbc4eb6384d5a561ce94e3ad /zenstore/CAS.cpp | |
| parent | Improved ZenCacheStore::DropBucket logic and added logging (diff) | |
| download | zen-9497ba8cba4347112e4335ca02d143aec8a45f24.tar.xz zen-9497ba8cba4347112e4335ca02d143aec8a45f24.zip | |
Implemented more formalised CAS chunk filtering (with plenty of room for optimization)
Diffstat (limited to 'zenstore/CAS.cpp')
| -rw-r--r-- | zenstore/CAS.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/zenstore/CAS.cpp b/zenstore/CAS.cpp index 36cf85549..d91e8cb2c 100644 --- a/zenstore/CAS.cpp +++ b/zenstore/CAS.cpp @@ -40,6 +40,7 @@ public: virtual void Initialize(const CasStoreConfiguration& InConfig) override; virtual CasStore::InsertResult InsertChunk(IoBuffer Chunk, const IoHash& ChunkHash) override; virtual IoBuffer FindChunk(const IoHash& ChunkHash) override; + virtual void FilterChunks(CasChunkSet& InOutChunks) override; virtual void Flush() override; private: @@ -144,6 +145,14 @@ CasImpl::FindChunk(const IoHash& ChunkHash) return IoBuffer{}; } +void +CasImpl::FilterChunks(CasChunkSet& InOutChunks) +{ + m_SmallStrategy.FilterChunks(InOutChunks); + m_TinyStrategy.FilterChunks(InOutChunks); + m_LargeStrategy.FilterChunks(InOutChunks); +} + void CasImpl::Flush() { |