From 626e764a5e0dfbbc9c40de7ea6d32e4d5779ad3a Mon Sep 17 00:00:00 2001 From: Steve Degosserie <723552+stiiifff@users.noreply.github.com> Date: Tue, 13 Jan 2026 12:14:26 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20=E2=9C=A8=20Upgrade=20to=20StorageHub?= =?UTF-8?q?=20v0.2.10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- operator/Cargo.lock | 92 +++++++++++++++++++++--------------- operator/Cargo.toml | 68 +++++++++++++------------- operator/node/src/cli.rs | 9 ++++ operator/node/src/command.rs | 3 ++ operator/node/src/service.rs | 5 +- 5 files changed, 103 insertions(+), 74 deletions(-) diff --git a/operator/Cargo.lock b/operator/Cargo.lock index cbe14380..ae214c40 100644 --- a/operator/Cargo.lock +++ b/operator/Cargo.lock @@ -5296,6 +5296,11 @@ name = "hashbrown" version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash 0.2.0", +] [[package]] name = "hashlink" @@ -6697,7 +6702,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "log", - "lru", + "lru 0.12.5", "quick-protobuf", "quick-protobuf-codec", "smallvec", @@ -7246,6 +7251,15 @@ dependencies = [ "hashbrown 0.15.5", ] +[[package]] +name = "lru" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +dependencies = [ + "hashbrown 0.16.0", +] + [[package]] name = "lru-cache" version = "0.1.2" @@ -8433,7 +8447,7 @@ dependencies = [ [[package]] name = "pallet-bucket-nfts" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -8490,7 +8504,7 @@ dependencies = [ [[package]] name = "pallet-cr-randomness" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-support", "frame-system", @@ -8774,7 +8788,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-file-system" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "fp-account", "fp-evm", @@ -9028,7 +9042,7 @@ dependencies = [ [[package]] name = "pallet-file-system" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -9055,7 +9069,7 @@ dependencies = [ [[package]] name = "pallet-file-system-runtime-api" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "parity-scale-codec", "scale-info", @@ -9251,7 +9265,7 @@ dependencies = [ [[package]] name = "pallet-payment-streams" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -9271,7 +9285,7 @@ dependencies = [ [[package]] name = "pallet-payment-streams-runtime-api" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "parity-scale-codec", "scale-info", @@ -9299,7 +9313,7 @@ dependencies = [ [[package]] name = "pallet-proofs-dealer" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -9321,7 +9335,7 @@ dependencies = [ [[package]] name = "pallet-proofs-dealer-runtime-api" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "parity-scale-codec", "scale-info", @@ -9343,7 +9357,7 @@ dependencies = [ [[package]] name = "pallet-randomness" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -9484,7 +9498,7 @@ dependencies = [ [[package]] name = "pallet-storage-providers" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-benchmarking", "frame-support", @@ -9506,7 +9520,7 @@ dependencies = [ [[package]] name = "pallet-storage-providers-runtime-api" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "parity-scale-codec", "scale-info", @@ -13647,7 +13661,7 @@ dependencies = [ [[package]] name = "shc-actors-derive" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "once_cell", "proc-macro2", @@ -13660,7 +13674,7 @@ dependencies = [ [[package]] name = "shc-actors-framework" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "bincode", @@ -13678,7 +13692,7 @@ dependencies = [ [[package]] name = "shc-blockchain-service" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "array-bytes", @@ -13732,7 +13746,7 @@ dependencies = [ [[package]] name = "shc-blockchain-service-db" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "chrono", "diesel", @@ -13756,7 +13770,7 @@ dependencies = [ [[package]] name = "shc-client" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "array-bytes", @@ -13774,6 +13788,7 @@ dependencies = [ "kvdb-rocksdb", "lazy_static", "log", + "lru 0.16.3", "ordered-float", "pallet-file-system", "pallet-file-system-runtime-api", @@ -13822,7 +13837,7 @@ dependencies = [ [[package]] name = "shc-common" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "bigdecimal", @@ -13886,7 +13901,7 @@ dependencies = [ [[package]] name = "shc-file-manager" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "bincode", "hash-db", @@ -13910,7 +13925,7 @@ dependencies = [ [[package]] name = "shc-file-transfer-service" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "array-bytes", @@ -13939,7 +13954,7 @@ dependencies = [ [[package]] name = "shc-fisherman-service" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "async-trait", "diesel", @@ -13969,8 +13984,9 @@ dependencies = [ [[package]] name = "shc-forest-manager" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ + "anyhow", "async-trait", "bincode", "hash-db", @@ -13994,7 +14010,7 @@ dependencies = [ [[package]] name = "shc-indexer-db" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "bigdecimal", "chrono", @@ -14022,7 +14038,7 @@ dependencies = [ [[package]] name = "shc-indexer-service" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "anyhow", "array-bytes", @@ -14073,7 +14089,7 @@ dependencies = [ [[package]] name = "shc-rpc" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "array-bytes", "async-trait", @@ -14125,7 +14141,7 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "shp-constants" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "sp-core", "sp-runtime", @@ -14134,7 +14150,7 @@ dependencies = [ [[package]] name = "shp-data-price-updater" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-support", "parity-scale-codec", @@ -14149,7 +14165,7 @@ dependencies = [ [[package]] name = "shp-file-key-verifier" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-support", "parity-scale-codec", @@ -14167,7 +14183,7 @@ dependencies = [ [[package]] name = "shp-file-metadata" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "hex", "num-bigint", @@ -14183,7 +14199,7 @@ dependencies = [ [[package]] name = "shp-forest-verifier" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-support", "parity-scale-codec", @@ -14200,7 +14216,7 @@ dependencies = [ [[package]] name = "shp-opaque" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "sp-runtime", ] @@ -14208,7 +14224,7 @@ dependencies = [ [[package]] name = "shp-session-keys" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "async-trait", "parity-scale-codec", @@ -14223,7 +14239,7 @@ dependencies = [ [[package]] name = "shp-traits" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "frame-support", "parity-scale-codec", @@ -14237,7 +14253,7 @@ dependencies = [ [[package]] name = "shp-treasury-funding" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "log", "shp-traits", @@ -14248,7 +14264,7 @@ dependencies = [ [[package]] name = "shp-tx-implicits-runtime-api" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "parity-scale-codec", "scale-info", @@ -14261,7 +14277,7 @@ dependencies = [ [[package]] name = "shp-types" version = "0.1.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.9#a2c15c6a25071d2060403a469b663eec51974010" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.2.10#5c3813a1c48adc7e89e47d468d802d47ef4206c2" dependencies = [ "sp-core", "sp-runtime", @@ -14469,7 +14485,7 @@ dependencies = [ "hex", "itertools 0.12.1", "log", - "lru", + "lru 0.12.5", "no-std-net", "parking_lot 0.12.5", "pin-project", diff --git a/operator/Cargo.toml b/operator/Cargo.toml index c19469d0..3f9dd5e8 100644 --- a/operator/Cargo.toml +++ b/operator/Cargo.toml @@ -266,42 +266,42 @@ fc-storage = { git = "https://github.com/polkadot-evm/frontier", branch = "stabl # StorageHub ## Runtime -pallet-bucket-nfts = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } +pallet-bucket-nfts = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } ## Client -shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } -shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } +shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } +shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } ## Precompiles -pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.9", default-features = false } +pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.2.10", default-features = false } # The list of dependencies below (which can be both direct and indirect dependencies) are crates # that are suspected to be CPU-intensive, and that are unlikely to require debugging (as some of diff --git a/operator/node/src/cli.rs b/operator/node/src/cli.rs index dc491ab5..3b2e2455 100644 --- a/operator/node/src/cli.rs +++ b/operator/node/src/cli.rs @@ -441,6 +441,14 @@ pub struct ProviderConfigurations { help_heading = "MSP Database Options" )] pub msp_database_url: Option, + + /// Maximum number of forest storage instances to keep open simultaneously. + /// MSPs have one forest per bucket; this controls how many can be open at once. + /// BSPs typically use a single forest, so this setting is effectively ignored for them. + /// Default: 512. With RocksDB's default of 512 open files per instance, + /// this results in a maximum of ~262K file descriptors. + #[arg(long, value_name = "COUNT", default_value = "512")] + pub max_open_forests: Option, } impl ProviderConfigurations { @@ -610,6 +618,7 @@ impl ProviderConfigurations { msp_database_url: self.msp_database_url.clone(), // We don't support maintenance mode for now. // maintenance_mode: self.maintenance_mode, + max_open_forests: self.max_open_forests, } } } diff --git a/operator/node/src/command.rs b/operator/node/src/command.rs index 0dd08e35..38854f3d 100644 --- a/operator/node/src/command.rs +++ b/operator/node/src/command.rs @@ -82,6 +82,9 @@ pub struct ProviderOptions { pub msp_database_url: Option, // Whether the node is running in maintenance mode. We are not supporting maintenance mode. // pub maintenance_mode: bool, + /// Maximum number of forest storage instances to keep open simultaneously. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub max_open_forests: Option, } /// Role configuration enum that ensures mutual exclusivity between Provider and Fisherman roles. diff --git a/operator/node/src/service.rs b/operator/node/src/service.rs index 7ce84b11..c172f267 100644 --- a/operator/node/src/service.rs +++ b/operator/node/src/service.rs @@ -1182,6 +1182,7 @@ where bsp_submit_proof, blockchain_service, msp_database_url, + max_open_forests, .. }) => { info!( @@ -1191,7 +1192,7 @@ where // Setup the storage layer and capacity config builder - .setup_storage_layer(storage_path.clone()) + .setup_storage_layer(storage_path.clone(), max_open_forests.unwrap_or(512)) .with_capacity_config(Some(CapacityConfig::new( max_storage_capacity.unwrap_or_default().saturated_into(), jump_capacity.unwrap_or_default().saturated_into(), @@ -1246,7 +1247,7 @@ where ); // Setup the storage layer (ephemeral for fisherman) - builder.setup_storage_layer(None); + builder.setup_storage_layer(None, 0); // Set the indexer db pool builder.with_indexer_db_pool(Some(db_pool));