diff --git a/Cargo.lock b/Cargo.lock index 16347bf..d0fc690 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -573,7 +573,7 @@ dependencies = [ "der", "digest", "flate2", - "foyer", + "foyer 0.19.1", "futures", "hex", "lazy_static", @@ -694,6 +694,17 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +[[package]] +name = "core_affinity" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a034b3a7b624016c6e13f5df875747cc25f884156aad2abd12b6c46797971342" +dependencies = [ + "libc", + "num_cpus", + "winapi", +] + [[package]] name = "cpufeatures" version = "0.2.17" @@ -1062,6 +1073,16 @@ dependencies = [ "rand 0.8.5", ] +[[package]] +name = "fastant" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bf7fa928ce0c4a43bd6e7d1235318fc32ac3a3dea06a2208c44e729449471a" +dependencies = [ + "small_ctor", + "web-time", +] + [[package]] name = "fastrand" version = "2.3.0" @@ -1176,13 +1197,32 @@ checksum = "0618db36554a0a5db538d7ff04427571b1f668d3e86a764aabe17985c02ea14c" dependencies = [ "anyhow", "equivalent", - "foyer-common", - "foyer-memory", - "foyer-storage", + "foyer-common 0.17.4", + "foyer-memory 0.17.4", + "foyer-storage 0.17.4", + "madsim-tokio", + "mixtrics 0.1.0", + "pin-project", + "serde", + "tokio", + "tracing", +] + +[[package]] +name = "foyer" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac7ca8280aee2f8c03c79764eda9d128319c79496e03b8af074f34f7e13db227" +dependencies = [ + "equivalent", + "foyer-common 0.19.1", + "foyer-memory 0.19.1", + "foyer-storage 0.19.1", "madsim-tokio", - "mixtrics", + "mixtrics 0.2.0", "pin-project", "serde", + "thiserror 2.0.12", "tokio", "tracing", ] @@ -1198,7 +1238,7 @@ dependencies = [ "cfg-if", "itertools", "madsim-tokio", - "mixtrics", + "mixtrics 0.1.0", "parking_lot", "pin-project", "serde", @@ -1207,6 +1247,24 @@ dependencies = [ "twox-hash", ] +[[package]] +name = "foyer-common" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4673a5b7408ea6543a295b264f1caecd5b037f88c9b011bf0323520ed245d953" +dependencies = [ + "bytes", + "cfg-if", + "itertools", + "madsim-tokio", + "mixtrics 0.2.0", + "parking_lot", + "pin-project", + "thiserror 2.0.12", + "tokio", + "twox-hash", +] + [[package]] name = "foyer-intrusive-collections" version = "0.10.0-dev" @@ -1226,12 +1284,36 @@ dependencies = [ "bitflags 2.9.1", "cmsketch", "equivalent", - "foyer-common", + "foyer-common 0.17.4", + "foyer-intrusive-collections", + "hashbrown 0.15.3", + "itertools", + "madsim-tokio", + "mixtrics 0.1.0", + "parking_lot", + "pin-project", + "serde", + "thiserror 2.0.12", + "tokio", + "tracing", +] + +[[package]] +name = "foyer-memory" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3915c8abdac049688d8eecea0e40143158bb3a15ef45a99241c6f797eda6b083" +dependencies = [ + "arc-swap", + "bitflags 2.9.1", + "cmsketch", + "equivalent", + "foyer-common 0.19.1", "foyer-intrusive-collections", "hashbrown 0.15.3", "itertools", "madsim-tokio", - "mixtrics", + "mixtrics 0.2.0", "parking_lot", "pin-project", "serde", @@ -1254,8 +1336,8 @@ dependencies = [ "clap", "equivalent", "flume", - "foyer-common", - "foyer-memory", + "foyer-common 0.17.4", + "foyer-memory 0.17.4", "fs4", "futures-core", "futures-util", @@ -1276,6 +1358,40 @@ dependencies = [ "zstd", ] +[[package]] +name = "foyer-storage" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8523ded7ef3d5322ab344fa960b99f413a9cf99cc87295b0bde4afd563e1eaea" +dependencies = [ + "allocator-api2", + "anyhow", + "bytes", + "core_affinity", + "equivalent", + "fastant", + "flume", + "foyer-common 0.19.1", + "foyer-memory 0.19.1", + "fs4", + "futures-core", + "futures-util", + "hashbrown 0.15.3", + "io-uring", + "itertools", + "libc", + "lz4", + "madsim-tokio", + "parking_lot", + "pin-project", + "rand 0.9.1", + "thiserror 2.0.12", + "tokio", + "tracing", + "twox-hash", + "zstd", +] + [[package]] name = "fs4" version = "0.13.1" @@ -1840,6 +1956,17 @@ version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" +[[package]] +name = "io-uring" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" +dependencies = [ + "bitflags 2.9.1", + "cfg-if", + "libc", +] + [[package]] name = "ipnet" version = "2.11.0" @@ -2131,6 +2258,16 @@ dependencies = [ "parking_lot", ] +[[package]] +name = "mixtrics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adbcddf5a90b959eea97ae505e0391f5c6dd411fbf546d43b9c59ad1c3bd4391" +dependencies = [ + "itertools", + "parking_lot", +] + [[package]] name = "moka" version = "0.12.10" @@ -3416,7 +3553,7 @@ dependencies = [ "fail-parallel", "figment", "flatbuffers", - "foyer", + "foyer 0.17.4", "futures", "log", "lz4_flex", @@ -3442,6 +3579,12 @@ dependencies = [ "walkdir", ] +[[package]] +name = "small_ctor" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88414a5ca1f85d82cc34471e975f0f74f6aa54c40f062efa42c0080e7f763f81" + [[package]] name = "smallvec" version = "1.15.0" diff --git a/Cargo.toml b/Cargo.toml index fc37e3d..5eb55f1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -44,7 +44,7 @@ rand = "0.8" tikv-jemallocator = { version = "0.6.0", features = ["background_threads"] } subtle = "2.5" futures = "0.3" -foyer = "0.17" +foyer = "0.19" openssl = { version = "0.10", features = ["vendored"] } csv = "1.3" reqwest = { version = "0.12", features = ["rustls-tls", "json"] }