aboutsummaryrefslogtreecommitdiff
path: root/zenstore/compactcas.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2022-03-17 16:48:33 +0100
committerDan Engelbrecht <[email protected]>2022-03-31 11:28:32 +0200
commit4e5d5b70e517095c471908c378a49e753674c68b (patch)
tree582a8adc2b5af9fe6269b041277103819d35e9b1 /zenstore/compactcas.cpp
parentAdd header to cas index file (diff)
downloadzen-4e5d5b70e517095c471908c378a49e753674c68b.tar.xz
zen-4e5d5b70e517095c471908c378a49e753674c68b.zip
WIP - bit assignement for CasDiskLocation
Diffstat (limited to 'zenstore/compactcas.cpp')
-rw-r--r--zenstore/compactcas.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/zenstore/compactcas.cpp b/zenstore/compactcas.cpp
index 2dcc9aa7c..27f0d0e29 100644
--- a/zenstore/compactcas.cpp
+++ b/zenstore/compactcas.cpp
@@ -25,10 +25,10 @@ namespace zen {
struct CasDiskIndexHeader
{
- static constexpr uint32_t ExpectedMagic = 0x75696478; // 'uidx';
- static constexpr uint32_t CurrentVersion = 1;
- uint32_t Magic = ExpectedMagic;
- uint32_t Version = CurrentVersion;
+ static constexpr uint32_t ExpectedMagic = 0x75696478; // 'uidx';
+ static constexpr uint32_t CurrentVersion = 1;
+ uint32_t Magic = ExpectedMagic;
+ uint32_t Version = CurrentVersion;
uint32_t PayloadAlignement;
uint32_t Reserved0 = 0;
uint64_t MaxBlockSize;
@@ -1004,11 +1004,8 @@ CasContainerStrategy::OpenContainer(bool IsNewStore)
uint64_t ExpectedEntryCount = (Size - sizeof(sizeof(CasDiskIndexHeader))) / sizeof(CasDiskIndexEntry);
CasDiskIndexHeader Header;
SmallObjectIndex.Read(&Header, sizeof(Header), 0);
- if (Header.Magic == CasDiskIndexHeader::ExpectedMagic &&
- Header.Version == CasDiskIndexHeader::CurrentVersion &&
- Header.MaxBlockSize > 0 &&
- Header.PayloadAlignement > 0 &&
- Header.EntryCount == ExpectedEntryCount)
+ if (Header.Magic == CasDiskIndexHeader::ExpectedMagic && Header.Version == CasDiskIndexHeader::CurrentVersion &&
+ Header.MaxBlockSize > 0 && Header.PayloadAlignement > 0 && Header.EntryCount == ExpectedEntryCount)
{
std::vector<CasDiskIndexEntry> Entries{Header.EntryCount};
SmallObjectIndex.Read(Entries.data(), Header.EntryCount * sizeof(CasDiskIndexEntry), sizeof(CasDiskIndexHeader));
@@ -1017,7 +1014,7 @@ CasContainerStrategy::OpenContainer(bool IsNewStore)
{
m_LocationMap[Entry.Key] = Entry.Location;
}
- m_MaxBlockSize = Header.MaxBlockSize;
+ m_MaxBlockSize = Header.MaxBlockSize;
m_PayloadAlignment = Header.PayloadAlignement;
}
}