[#39] Client: add memory usage optimizations
All checks were successful
DCO / DCO (pull_request) Successful in 24s
lint-build / dotnet8.0 (pull_request) Successful in 41s
lint-build / dotnet8.0 (push) Successful in 55s

Signed-off-by: Pavel Gross <p.gross@yadro.com>
This commit is contained in:
Pavel Gross 2025-03-07 15:29:45 +03:00
parent d6fe034453
commit 32a7e64538
14 changed files with 120 additions and 92 deletions

View file

@ -55,7 +55,15 @@ public static class ObjectTools
var grpcHeader = @object.Header.GetHeader();
grpcHeader.PayloadLength = (ulong)@object.SingleObjectPayload.Length;
grpcHeader.PayloadHash = Sha256Checksum(@object.SingleObjectPayload);
if (@object.PayloadHash != null)
{
grpcHeader.PayloadHash = ChecksumFromSha256(@object.PayloadHash);
}
else
{
grpcHeader.PayloadHash = Sha256Checksum(@object.SingleObjectPayload);
}
var split = @object.Header.Split;
@ -148,6 +156,15 @@ public static class ObjectTools
};
}
internal static Checksum Sha256Checksum(ReadOnlyMemory<byte> data)
{
return new Checksum
{
Type = ChecksumType.Sha256,
Sum = ByteString.CopyFrom(data.Sha256())
};
}
internal static Checksum ChecksumFromSha256(ReadOnlyMemory<byte> dataHash)
{
return new Checksum