From bb1edc3f1a6d255247531bc0be57335830526c86 Mon Sep 17 00:00:00 2001 From: strawberry Date: Sun, 11 Feb 2024 11:49:31 -0500 Subject: [PATCH] use zaidoon1's fork of rust-rocksdb https://github.com/zaidoon1/rust-rocksdb https://github.com/rust-rocksdb/rust-rocksdb/issues/855#issuecomment-1937412844 shame that this has resulted in yet another fork of software, but oh well... Signed-off-by: strawberry --- Cargo.lock | 79 +++++++++++++++++++++--------------------------------- Cargo.toml | 14 +++++++--- 2 files changed, 40 insertions(+), 53 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ef96dde8..eacdd1d5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -218,17 +218,16 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "bindgen" -version = "0.65.1" +version = "0.69.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5" +checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.2", "cexpr", "clang-sys", + "itertools 0.11.0", "lazy_static", "lazycell", - "peeking_take_while", - "prettyplease", "proc-macro2", "quote", "regex", @@ -416,9 +415,9 @@ dependencies = [ "regex", "reqwest", "ring", - "rocksdb", "ruma", "rusqlite", + "rust-rocksdb", "sd-notify", "serde", "serde_html_form", @@ -1281,23 +1280,6 @@ dependencies = [ "redox_syscall", ] -[[package]] -name = "librocksdb-sys" -version = "0.11.0+8.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" -dependencies = [ - "bindgen", - "bzip2-sys", - "cc", - "glob", - "libc", - "libz-sys", - "lz4-sys", - "pkg-config", - "zstd-sys", -] - [[package]] name = "libsqlite3-sys" version = "0.27.0" @@ -1758,12 +1740,6 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - [[package]] name = "pem" version = "3.0.3" @@ -1903,16 +1879,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" -[[package]] -name = "prettyplease" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" -dependencies = [ - "proc-macro2", - "syn 2.0.48", -] - [[package]] name = "proc-macro-crate" version = "2.0.2" @@ -2120,16 +2086,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "rocksdb" -version = "0.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb6f170a4041d50a0ce04b0d2e14916d6ca863ea2e422689a5b694395d299ffe" -dependencies = [ - "libc", - "librocksdb-sys", -] - [[package]] name = "ruma" version = "0.9.4" @@ -2332,6 +2288,31 @@ dependencies = [ "smallvec", ] +[[package]] +name = "rust-librocksdb-sys" +version = "0.16.0+8.10.0" +source = "git+https://github.com/zaidoon1/rust-rocksdb?rev=8fdd559b590bd12cb506f9818bef484d51cac5e1#8fdd559b590bd12cb506f9818bef484d51cac5e1" +dependencies = [ + "bindgen", + "bzip2-sys", + "cc", + "glob", + "libc", + "libz-sys", + "lz4-sys", + "pkg-config", + "zstd-sys", +] + +[[package]] +name = "rust-rocksdb" +version = "0.22.1" +source = "git+https://github.com/zaidoon1/rust-rocksdb?rev=8fdd559b590bd12cb506f9818bef484d51cac5e1#8fdd559b590bd12cb506f9818bef484d51cac5e1" +dependencies = [ + "libc", + "rust-librocksdb-sys", +] + [[package]] name = "rustc-demangle" version = "0.1.23" diff --git a/Cargo.toml b/Cargo.toml index 1c800730..790afee7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -83,8 +83,6 @@ threadpool = "1.8.1" # Used for ruma wrapper serde_html_form = "0.2.3" -rocksdb = { version = "0.21.0", default-features = true, features = ["multi-threaded-cf", "zstd"], optional = true } - thread_local = "1.1.7" # used for TURN server authentication hmac = "0.12.1" @@ -108,13 +106,21 @@ sd-notify = { version = "0.4.1", optional = true } webpage = { version = "2.0", default-features = false } +[dependencies.rust-rocksdb] +git = "https://github.com/zaidoon1/rust-rocksdb" +rev = "8fdd559b590bd12cb506f9818bef484d51cac5e1" +default-features = false +features = ["multi-threaded-cf", "zstd", "snappy", "lz4"] +optional = true + + [target.'cfg(unix)'.dependencies] nix = { version = "0.27.1", features = ["resource"] } [features] default = ["conduit_bin", "backend_rocksdb", "systemd", "zstd_compression"] backend_sqlite = ["sqlite"] -backend_rocksdb = ["rocksdb"] +backend_rocksdb = ["rust-rocksdb"] jemalloc = ["tikv-jemalloc-ctl", "tikv-jemallocator"] sqlite = ["rusqlite", "parking_lot", "tokio/signal"] conduit_bin = ["axum"] @@ -124,7 +130,7 @@ zstd_compression = [] #brotli_compression = ["tower-http/compression-br"] #compression = ["tower-http/compression-full"] sha256_media = [] -io_uring = ["rocksdb/io-uring"] +io_uring = ["rust-rocksdb/io-uring"] [[bin]] name = "conduit"