From 09a1da25edfcafaba713f5e475ed93050cd0a637 Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Thu, 24 Sep 2020 08:52:35 +0200 Subject: [PATCH] src/backup/data_blob.rs: improve decompress speed --- src/backup/data_blob.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/backup/data_blob.rs b/src/backup/data_blob.rs index b687be04..ef11765e 100644 --- a/src/backup/data_blob.rs +++ b/src/backup/data_blob.rs @@ -198,7 +198,10 @@ impl DataBlob { Ok(data) } else if magic == &COMPRESSED_BLOB_MAGIC_1_0 { let data_start = std::mem::size_of::(); - let data = zstd::block::decompress(&self.raw_data[data_start..], MAX_BLOB_SIZE)?; + let mut reader = &self.raw_data[data_start..]; + let data = zstd::stream::decode_all(&mut reader)?; + // zstd::block::decompress is abou 10% slower + // let data = zstd::block::decompress(&self.raw_data[data_start..], MAX_BLOB_SIZE)?; if let Some(digest) = digest { Self::verify_digest(&data, None, digest)?; }