From 9748543f1c3edd88e8b05f6a772d6e9be18a7be9 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Mon, 11 Dec 2023 21:25:34 +0200 Subject: chore(tvix): drop sled compression support It's been a while since the last sled release, and that one binds to a pretty old version of zstd, requiring workarounds like cl/10090. Upstream sled main branch currently has zstd halfway patched out (it's a no-op, but the feature flag and options are still there), and it's in that state for a year. Rather than maintaining our own fork of sled, let's just stop using the compression feature in sled, dropping the version pin to zstd that way, removing the need for cl/10090. This doesn't mean we won't reintroduce per-blob compression - but we probably just won't let sled take care of the compression, but do it ourselves - which is necessary for more chunked blob storage anyways. Even though we do drop the feature flag, we still need to explicitly use use_compression(false). Change-Id: I0e4892d29e41c76653272dc1a3625180da6fee12 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10257 Autosubmit: flokli Reviewed-by: raitobezarius Tested-by: BuildkiteCI --- tvix/store/Cargo.toml | 2 +- tvix/store/src/pathinfoservice/from_addr.rs | 2 +- tvix/store/src/pathinfoservice/sled.rs | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) (limited to 'tvix/store') diff --git a/tvix/store/Cargo.toml b/tvix/store/Cargo.toml index d5ea10a5b70b..86d40d72bacf 100644 --- a/tvix/store/Cargo.toml +++ b/tvix/store/Cargo.toml @@ -18,7 +18,7 @@ parking_lot = "0.12.1" pin-project-lite = "0.2.13" prost = "0.12.1" sha2 = "0.10.6" -sled = { version = "0.34.7", features = ["compression"] } +sled = { version = "0.34.7" } thiserror = "1.0.38" tokio = { version = "1.32.0", features = ["fs", "macros", "net", "rt", "rt-multi-thread", "signal"] } tokio-listener = { version = "0.2.2", features = [ "tonic010" ] } diff --git a/tvix/store/src/pathinfoservice/from_addr.rs b/tvix/store/src/pathinfoservice/from_addr.rs index ee6a6925af60..1505b3e427ee 100644 --- a/tvix/store/src/pathinfoservice/from_addr.rs +++ b/tvix/store/src/pathinfoservice/from_addr.rs @@ -54,7 +54,7 @@ pub async fn from_addr( )); } - // TODO: expose compression and other parameters as URL parameters? + // TODO: expose other parameters as URL parameters? if url.path().is_empty() { return Ok(Arc::new( diff --git a/tvix/store/src/pathinfoservice/sled.rs b/tvix/store/src/pathinfoservice/sled.rs index a12f918c83cf..1382c3c29bfd 100644 --- a/tvix/store/src/pathinfoservice/sled.rs +++ b/tvix/store/src/pathinfoservice/sled.rs @@ -26,7 +26,9 @@ impl SledPathInfoService { blob_service: Arc, directory_service: Arc, ) -> Result { - let config = sled::Config::default().use_compression(true).path(p); + let config = sled::Config::default() + .use_compression(false) // is a required parameter + .path(p); let db = config.open()?; Ok(Self { -- cgit 1.4.1