diff options
| author | Stefan Boberg <[email protected]> | 2022-12-12 13:34:51 +0100 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-12-12 13:34:51 +0100 |
| commit | 8dbd301a196041a36be455c1b4cedc81f0d634fe (patch) | |
| tree | 0c278bb9ac5d185ef1ce6115f7c85067e680d0b7 | |
| parent | added [[fallthrough]] annotations to silence static analysis (diff) | |
| download | zen-8dbd301a196041a36be455c1b4cedc81f0d634fe.tar.xz zen-8dbd301a196041a36be455c1b4cedc81f0d634fe.zip | |
Changed so CompressedBuffer::DecodeRawHash returns IoHash just like on the UE side (#208)
removed all use of IoHash::FromBLAKE3() caused by interactions with CompressedBuffer APIs
| -rw-r--r-- | zencore/compress.cpp | 4 | ||||
| -rw-r--r-- | zencore/include/zencore/compress.h | 2 | ||||
| -rw-r--r-- | zenhttp/httpshared.cpp | 2 | ||||
| -rw-r--r-- | zenserver-test/zenserver-test.cpp | 18 | ||||
| -rw-r--r-- | zenserver/cache/structuredcachestore.cpp | 5 | ||||
| -rw-r--r-- | zenserver/projectstore.cpp | 4 | ||||
| -rw-r--r-- | zenserver/upstream/upstreamcache.cpp | 2 | ||||
| -rw-r--r-- | zenstore/gc.cpp | 5 | ||||
| -rw-r--r-- | zenutil/cache/cacherequests.cpp | 56 |
9 files changed, 47 insertions, 51 deletions
diff --git a/zencore/compress.cpp b/zencore/compress.cpp index 6e06739ea..e89f02d68 100644 --- a/zencore/compress.cpp +++ b/zencore/compress.cpp @@ -939,10 +939,10 @@ CompressedBuffer::DecodeRawSize() const return CompressedData ? detail::BufferHeader::Read(CompressedData).TotalRawSize : 0; } -BLAKE3 +IoHash CompressedBuffer::DecodeRawHash() const { - return CompressedData ? detail::BufferHeader::Read(CompressedData).RawHash : BLAKE3(); + return CompressedData ? IoHash::FromBLAKE3(detail::BufferHeader::Read(CompressedData).RawHash) : IoHash(); } CompressedBuffer diff --git a/zencore/include/zencore/compress.h b/zencore/include/zencore/compress.h index 5bf6d3001..99ce20d8a 100644 --- a/zencore/include/zencore/compress.h +++ b/zencore/include/zencore/compress.h @@ -117,7 +117,7 @@ public: [[nodiscard]] ZENCORE_API uint64_t DecodeRawSize() const; /** Returns the hash of the raw data. Zero on error or if this is null. */ - [[nodiscard]] ZENCORE_API BLAKE3 DecodeRawHash() const; + [[nodiscard]] ZENCORE_API IoHash DecodeRawHash() const; [[nodiscard]] ZENCORE_API CompressedBuffer CopyRange(uint64_t RawOffset, uint64_t RawSize = ~uint64_t(0)) const; diff --git a/zenhttp/httpshared.cpp b/zenhttp/httpshared.cpp index 568585639..b6346413f 100644 --- a/zenhttp/httpshared.cpp +++ b/zenhttp/httpshared.cpp @@ -560,7 +560,7 @@ CbPackageReader::Finalize() { CompressedBuffer Compressed = CompressedBuffer::Compress(SharedBuffer(ChunkReference), OodleCompressor::NotSet, OodleCompressionLevel::None); - m_Attachments.push_back(CbAttachment(std::move(Compressed), IoHash::FromBLAKE3(Compressed.DecodeRawHash()))); + m_Attachments.push_back(CbAttachment(std::move(Compressed), Compressed.DecodeRawHash())); } } diff --git a/zenserver-test/zenserver-test.cpp b/zenserver-test/zenserver-test.cpp index c72410173..ee3c5b742 100644 --- a/zenserver-test/zenserver-test.cpp +++ b/zenserver-test/zenserver-test.cpp @@ -524,7 +524,7 @@ TEST_CASE("project.basic") uint8_t AttachData[] = {1, 2, 3}; zen::CompressedBuffer Attachment = zen::CompressedBuffer::Compress(zen::SharedBuffer::Clone(zen::MemoryView{AttachData, 3})); - zen::CbAttachment Attach{Attachment, IoHash::FromBLAKE3(Attachment.DecodeRawHash())}; + zen::CbAttachment Attach{Attachment, Attachment.DecodeRawHash()}; zen::CbObjectWriter OpWriter; OpWriter << "key" @@ -765,7 +765,7 @@ TEST_CASE("zcache.cbpackage") auto Data = zen::SharedBuffer::Clone(zen::MakeMemoryView<uint8_t>({1, 2, 3, 4, 5, 6, 7, 8, 9})); auto CompressedData = zen::CompressedBuffer::Compress(Data); - OutAttachmentKey = zen::IoHash::FromBLAKE3(CompressedData.DecodeRawHash()); + OutAttachmentKey = CompressedData.DecodeRawHash(); zen::CbWriter Obj; Obj.BeginObject("obj"sv); @@ -988,7 +988,7 @@ TEST_CASE("zcache.policy") auto GeneratePackage = [](zen::IoHash& OutRecordKey, zen::IoHash& OutAttachmentKey) -> zen::CbPackage { auto Data = zen::SharedBuffer::Clone(zen::MakeMemoryView<uint8_t>({1, 2, 3, 4, 5, 6, 7, 8, 9})); auto CompressedData = zen::CompressedBuffer::Compress(Data); - OutAttachmentKey = zen::IoHash::FromBLAKE3(CompressedData.DecodeRawHash()); + OutAttachmentKey = CompressedData.DecodeRawHash(); zen::CbWriter Writer; Writer.BeginObject("obj"sv); @@ -1961,7 +1961,7 @@ TEST_CASE("zcache.rpc.allpolicies") { Builder.BeginObject(); Builder.AddObjectId("Id"sv, ValueIds[ValueIndex]); - Builder.AddBinaryAttachment("RawHash"sv, IoHash::FromBLAKE3(KeyData.BufferValues[ValueIndex].DecodeRawHash())); + Builder.AddBinaryAttachment("RawHash"sv, KeyData.BufferValues[ValueIndex].DecodeRawHash()); Builder.AddInteger("RawSize"sv, KeyData.BufferValues[ValueIndex].DecodeRawSize()); Builder.EndObject(); } @@ -2138,7 +2138,7 @@ TEST_CASE("zcache.rpc.allpolicies") WriteToString<32> ValueName("Get(", KeyData->KeyIndex, ",", ExpectedValueIndex, ")"); CompressedBuffer ExpectedValue = KeyData->BufferValues[ExpectedValueIndex]; - CHECK_MESSAGE(Value.RawHash == IoHash::FromBLAKE3(ExpectedValue.DecodeRawHash()), + CHECK_MESSAGE(Value.RawHash == ExpectedValue.DecodeRawHash(), WriteToString<32>(ValueName, " RawHash did not match.").c_str()); CHECK_MESSAGE(Value.RawSize == ExpectedValue.DecodeRawSize(), WriteToString<32>(ValueName, " RawSize did not match.").c_str()); @@ -2203,7 +2203,7 @@ TEST_CASE("zcache.rpc.allpolicies") if (!KeyData->ForceMiss && Succeeded) { CompressedBuffer ExpectedValue = KeyData->BufferValues[0]; - CHECK_MESSAGE(ValueResult.RawHash == IoHash::FromBLAKE3(ExpectedValue.DecodeRawHash()), + CHECK_MESSAGE(ValueResult.RawHash == ExpectedValue.DecodeRawHash(), WriteToString<32>(Name, " RawHash did not match.").c_str()); CHECK_MESSAGE(ValueResult.RawSize == ExpectedValue.DecodeRawSize(), WriteToString<32>(Name, " RawSize did not match.").c_str()); @@ -2277,7 +2277,7 @@ TEST_CASE("zcache.rpc.allpolicies") if (KeyData->ShouldBeHit && Succeeded) { CompressedBuffer ExpectedValue = KeyData->BufferValues[ValueIndex]; - CHECK_MESSAGE(ValueResult.RawHash == IoHash::FromBLAKE3(ExpectedValue.DecodeRawHash()), + CHECK_MESSAGE(ValueResult.RawHash == ExpectedValue.DecodeRawHash(), WriteToString<32>(Name, " had unexpected RawHash.").c_str()); CHECK_MESSAGE(ValueResult.RawSize == ExpectedValue.DecodeRawSize(), WriteToString<32>(Name, " had unexpected RawSize.").c_str()); @@ -2659,11 +2659,11 @@ TEST_CASE("http.package") zen::CompressedBuffer AttachmentData1 = zen::CompressedBuffer::Compress(zen::SharedBuffer::Clone({Data1, 4}), zen::OodleCompressor::NotSet, zen::OodleCompressionLevel::None); - zen::CbAttachment Attach1{AttachmentData1, IoHash::FromBLAKE3(AttachmentData1.DecodeRawHash())}; + zen::CbAttachment Attach1{AttachmentData1, AttachmentData1.DecodeRawHash()}; zen::CompressedBuffer AttachmentData2 = zen::CompressedBuffer::Compress(zen::SharedBuffer::Clone({Data2, 8}), zen::OodleCompressor::NotSet, zen::OodleCompressionLevel::None); - zen::CbAttachment Attach2{AttachmentData2, IoHash::FromBLAKE3(AttachmentData2.DecodeRawHash())}; + zen::CbAttachment Attach2{AttachmentData2, AttachmentData2.DecodeRawHash()}; zen::CbObjectWriter Writer; diff --git a/zenserver/cache/structuredcachestore.cpp b/zenserver/cache/structuredcachestore.cpp index ecb41d57e..9f6707a4a 100644 --- a/zenserver/cache/structuredcachestore.cpp +++ b/zenserver/cache/structuredcachestore.cpp @@ -3101,8 +3101,7 @@ TEST_CASE("z$.scrub") { IoBuffer AttachmentData = CreateBinaryCacheValue(AttachmentSizes[Index]); CompressedBuffer CompressedAttachmentData = CompressedBuffer::Compress(SharedBuffer(AttachmentData)); - Record.AddBinaryAttachment(fmt::format("attachment-{}", Index), - IoHash::FromBLAKE3(CompressedAttachmentData.DecodeRawHash())); + Record.AddBinaryAttachment(fmt::format("attachment-{}", Index), CompressedAttachmentData.DecodeRawHash()); Result.Attachments[Index] = CompressedAttachmentData; } Result.Record = Record.Save().GetBuffer().AsIoBuffer(); @@ -3144,7 +3143,7 @@ TEST_CASE("z$.scrub") Zcs.Put("mybucket", Cid, {.Value = Record.Record}); for (const CompressedBuffer& Attachment : Record.Attachments) { - CidStore.AddChunk(Attachment.GetCompressed().Flatten().AsIoBuffer(), IoHash::FromBLAKE3(Attachment.DecodeRawHash())); + CidStore.AddChunk(Attachment.GetCompressed().Flatten().AsIoBuffer(), Attachment.DecodeRawHash()); } } }; diff --git a/zenserver/projectstore.cpp b/zenserver/projectstore.cpp index 2c44beaee..3e242653a 100644 --- a/zenserver/projectstore.cpp +++ b/zenserver/projectstore.cpp @@ -2578,7 +2578,7 @@ namespace testutils { Object.BeginArray("bulkdata"); for (const auto& Attachment : Attachments) { - CbAttachment Attach(Attachment.second, IoHash::FromBLAKE3(Attachment.second.DecodeRawHash())); + CbAttachment Attach(Attachment.second, Attachment.second.DecodeRawHash()); Object.BeginObject(); Object << "id"sv << Attachment.first; Object << "type"sv @@ -2834,7 +2834,7 @@ TEST_CASE("project.store.partial.read") } { IoBuffer Chunk; - CHECK(ProjectStore.GetChunk(IoHash::FromBLAKE3(Attachments[OpIds[1]][0].second.DecodeRawHash()).ToHexString(), + CHECK(ProjectStore.GetChunk(Attachments[OpIds[1]][0].second.DecodeRawHash().ToHexString(), HttpContentType::kCompressedBinary, Chunk) == HttpResponseCode::OK); IoHash RawHash; diff --git a/zenserver/upstream/upstreamcache.cpp b/zenserver/upstream/upstreamcache.cpp index 6e5422007..e838b5fe2 100644 --- a/zenserver/upstream/upstreamcache.cpp +++ b/zenserver/upstream/upstreamcache.cpp @@ -490,7 +490,7 @@ namespace detail { else { CompressedBuffer Compressed = CompressedBuffer::Compress(SharedBuffer(Payload)); - RawHash = IoHash::FromBLAKE3(Compressed.DecodeRawHash()); + RawHash = Compressed.DecodeRawHash(); if (RawHash == PayloadHash) { IsCompressed = true; diff --git a/zenstore/gc.cpp b/zenstore/gc.cpp index c50f59b64..cb155dad1 100644 --- a/zenstore/gc.cpp +++ b/zenstore/gc.cpp @@ -917,8 +917,7 @@ TEST_CASE("gc.basic") IoBuffer Chunk = CreateChunk(128); auto CompressedChunk = Compress(Chunk); - const auto InsertResult = - CidStore.AddChunk(CompressedChunk.GetCompressed().Flatten().AsIoBuffer(), IoHash::FromBLAKE3(CompressedChunk.DecodeRawHash())); + const auto InsertResult = CidStore.AddChunk(CompressedChunk.GetCompressed().Flatten().AsIoBuffer(), CompressedChunk.DecodeRawHash()); CHECK(InsertResult.New); GcContext GcCtx(GcClock::Now() - std::chrono::hours(24)); @@ -927,7 +926,7 @@ TEST_CASE("gc.basic") CidStore.Flush(); Gc.CollectGarbage(GcCtx); - CHECK(!CidStore.ContainsChunk(IoHash::FromBLAKE3(CompressedChunk.DecodeRawHash()))); + CHECK(!CidStore.ContainsChunk(CompressedChunk.DecodeRawHash())); } TEST_CASE("gc.full") diff --git a/zenutil/cache/cacherequests.cpp b/zenutil/cache/cacherequests.cpp index e6df4b4aa..5cbb2e04b 100644 --- a/zenutil/cache/cacherequests.cpp +++ b/zenutil/cache/cacherequests.cpp @@ -227,7 +227,7 @@ namespace cacherequests { PutCacheRecordRequestValue& Value = Request.Values[It->second]; ZEN_ASSERT(Value.RawHash == ValueHash); Value.Body = Attachment->AsCompressedBinary(); - ZEN_ASSERT_SLOW(IoHash::FromBLAKE3(Value.Body.DecodeRawHash()) == Value.RawHash); + ZEN_ASSERT_SLOW(Value.Body.DecodeRawHash() == Value.RawHash); } } }); @@ -268,7 +268,7 @@ namespace cacherequests { const CompressedBuffer& Buffer = Value.Body; if (Buffer) { - IoHash AttachmentHash = IoHash::FromBLAKE3(Buffer.DecodeRawHash()); // TODO: Slow! + IoHash AttachmentHash = Buffer.DecodeRawHash(); // TODO: Slow! Writer.AddBinaryAttachment("RawHash", AttachmentHash); OutPackage.AddAttachment(CbAttachment(Buffer, AttachmentHash)); Writer.AddInteger("RawSize", Buffer.DecodeRawSize()); // TODO: Slow! @@ -500,7 +500,7 @@ namespace cacherequests { Writer.BeginArray("Values"); for (const GetCacheRecordResultValue& Value : RecordResult->Values) { - IoHash AttachmentHash = Value.Body ? IoHash::FromBLAKE3(Value.Body.DecodeRawHash()) : Value.RawHash; + IoHash AttachmentHash = Value.Body ? Value.Body.DecodeRawHash() : Value.RawHash; Writer.BeginObject(); { Writer.AddObjectId("Id", Value.Id); @@ -591,7 +591,7 @@ namespace cacherequests { WriteCacheRequestKey(Writer, ValueRequest.Key); if (ValueRequest.Body) { - IoHash AttachmentHash = IoHash::FromBLAKE3(ValueRequest.Body.DecodeRawHash()); + IoHash AttachmentHash = ValueRequest.Body.DecodeRawHash(); if (ValueRequest.RawHash != IoHash::Zero && AttachmentHash != ValueRequest.RawHash) { return false; @@ -1041,8 +1041,8 @@ namespace cacherequests { static bool operator==(const PutCacheRecordRequestValue& Lhs, const PutCacheRecordRequestValue& Rhs) { - const IoHash LhsRawHash = Lhs.RawHash != IoHash::Zero ? Lhs.RawHash : IoHash::FromBLAKE3(Lhs.Body.DecodeRawHash()); - const IoHash RhsRawHash = Rhs.RawHash != IoHash::Zero ? Rhs.RawHash : IoHash::FromBLAKE3(Rhs.Body.DecodeRawHash()); + const IoHash LhsRawHash = Lhs.RawHash != IoHash::Zero ? Lhs.RawHash : Lhs.Body.DecodeRawHash(); + const IoHash RhsRawHash = Rhs.RawHash != IoHash::Zero ? Rhs.RawHash : Rhs.Body.DecodeRawHash(); return Lhs.Id == Rhs.Id && LhsRawHash == RhsRawHash && Lhs.Body.GetCompressed().Flatten().GetView().EqualBytes(Rhs.Body.GetCompressed().Flatten().GetView()); } @@ -1312,30 +1312,30 @@ namespace cacherequests { GetCacheRecordsResult FullResult = { {GetCacheRecordResult{.Key = FullPutRequestCopy.Requests[0].Key, .Values = {{.Id = FullPutRequestCopy.Requests[0].Values[0].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[0].Values[0].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[0].Values[0].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[0].Values[0].Body.DecodeRawSize(), .Body = FullPutRequestCopy.Requests[0].Values[0].Body}, {.Id = FullPutRequestCopy.Requests[0].Values[1].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[0].Values[1].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[0].Values[1].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[0].Values[1].Body.DecodeRawSize(), .Body = FullPutRequestCopy.Requests[0].Values[1].Body}, {.Id = FullPutRequestCopy.Requests[0].Values[2].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[0].Values[2].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[0].Values[2].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[0].Values[2].Body.DecodeRawSize(), .Body = FullPutRequestCopy.Requests[0].Values[2].Body}}}, {}, // Simulate not have! GetCacheRecordResult{.Key = FullPutRequestCopy.Requests[2].Key, .Values = {{.Id = FullPutRequestCopy.Requests[2].Values[0].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[2].Values[0].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[2].Values[0].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[2].Values[0].Body.DecodeRawSize(), .Body = FullPutRequestCopy.Requests[2].Values[0].Body}, {.Id = FullPutRequestCopy.Requests[2].Values[1].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[2].Values[1].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[2].Values[1].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[2].Values[1].Body.DecodeRawSize(), .Body = {}}, // Simulate not have {.Id = FullPutRequestCopy.Requests[2].Values[2].Id, - .RawHash = IoHash::FromBLAKE3(FullPutRequestCopy.Requests[2].Values[2].Body.DecodeRawHash()), + .RawHash = FullPutRequestCopy.Requests[2].Values[2].Body.DecodeRawHash(), .RawSize = FullPutRequestCopy.Requests[2].Values[2].Body.DecodeRawSize(), .Body = FullPutRequestCopy.Requests[2].Values[2].Body}}}}}; CbPackage FullResponsePackage; @@ -1368,15 +1368,15 @@ namespace cacherequests { .DefaultPolicy = CachePolicy::StoreLocal, .Namespace = "other_namespace", .Requests = {{.Key = {.Bucket = "finebucket", .Hash = IoHash::FromHexString("d1df59fcab06793a5f2c372d795bb907a15cab15")}, - .RawHash = IoHash::FromBLAKE3(Buffers[0].DecodeRawHash()), + .RawHash = Buffers[0].DecodeRawHash(), .Body = Buffers[0], .Policy = CachePolicy::Local}, {.Key = {.Bucket = "badbucket", .Hash = IoHash::FromHexString("177030568fdd461bf4fe5ddbf4d463e514e8178e")}, - .RawHash = IoHash::FromBLAKE3(Buffers[1].DecodeRawHash()), + .RawHash = Buffers[1].DecodeRawHash(), .Body = Buffers[1], .Policy = CachePolicy::Remote}, {.Key = {.Bucket = "badbucket", .Hash = IoHash::FromHexString("e1ce9e1ac8a6f5953dc14c1fa9512b804ed689df")}, - .RawHash = IoHash::FromBLAKE3(Buffers[2].DecodeRawHash())}}}; + .RawHash = Buffers[2].DecodeRawHash()}}}; CbPackage FullRequestPackage; CHECK(FullRequest.Format(FullRequestPackage)); @@ -1439,13 +1439,12 @@ namespace cacherequests { {MakeCompressedBuffer(6123), MakeCompressedBuffer(8321), MakeCompressedBuffer(7333)}, {MakeCompressedBuffer(5123), MakeCompressedBuffer(2321), MakeCompressedBuffer(2333)}}; CacheValuesResult FullResult = { - .Results = { - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][0].DecodeRawHash()), .Body = Buffers[0][0]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][1].DecodeRawHash()), .Body = Buffers[0][1]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][2].DecodeRawHash()), .Body = Buffers[0][2]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[2][0].DecodeRawHash()), .Body = Buffers[2][0]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[2][1].DecodeRawHash()), .Body = Buffers[2][1]}, - CacheValueResult{.RawSize = Buffers[2][2].DecodeRawSize(), .RawHash = IoHash::FromBLAKE3(Buffers[2][2].DecodeRawHash())}}}; + .Results = {CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][0].DecodeRawHash(), .Body = Buffers[0][0]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][1].DecodeRawHash(), .Body = Buffers[0][1]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][2].DecodeRawHash(), .Body = Buffers[0][2]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[2][0].DecodeRawHash(), .Body = Buffers[2][0]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[2][1].DecodeRawHash(), .Body = Buffers[2][1]}, + CacheValueResult{.RawSize = Buffers[2][2].DecodeRawSize(), .RawHash = Buffers[2][2].DecodeRawHash()}}}; CbPackage FullResponsePackage; CHECK(FullResult.Format(FullResponsePackage)); CacheValuesResult FullResultCopy; @@ -1509,13 +1508,12 @@ namespace cacherequests { {MakeCompressedBuffer(6123), MakeCompressedBuffer(8321), MakeCompressedBuffer(7333)}, {MakeCompressedBuffer(5123), MakeCompressedBuffer(2321), MakeCompressedBuffer(2333)}}; GetCacheChunksResult FullResult = { - .Results = { - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][0].DecodeRawHash()), .Body = Buffers[0][0]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][1].DecodeRawHash()), .Body = Buffers[0][1]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[0][2].DecodeRawHash()), .Body = Buffers[0][2]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[2][0].DecodeRawHash()), .Body = Buffers[2][0]}, - CacheValueResult{.RawSize = 0, .RawHash = IoHash::FromBLAKE3(Buffers[2][1].DecodeRawHash()), .Body = Buffers[2][1]}, - CacheValueResult{.RawSize = Buffers[2][2].DecodeRawSize(), .RawHash = IoHash::FromBLAKE3(Buffers[2][2].DecodeRawHash())}}}; + .Results = {CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][0].DecodeRawHash(), .Body = Buffers[0][0]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][1].DecodeRawHash(), .Body = Buffers[0][1]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[0][2].DecodeRawHash(), .Body = Buffers[0][2]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[2][0].DecodeRawHash(), .Body = Buffers[2][0]}, + CacheValueResult{.RawSize = 0, .RawHash = Buffers[2][1].DecodeRawHash(), .Body = Buffers[2][1]}, + CacheValueResult{.RawSize = Buffers[2][2].DecodeRawSize(), .RawHash = Buffers[2][2].DecodeRawHash()}}}; CbPackage FullResponsePackage; CHECK(FullResult.Format(FullResponsePackage)); GetCacheChunksResult FullResultCopy; |