diff --git a/.gitignore b/.gitignore index 24c1e1a3..025d0f23 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,6 @@ bench/metrics.csv *out.json* .env test-ledger -.idea/ \ No newline at end of file +.idea/ +.run/ +*config.json \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 3219b041..2dea1211 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -383,9 +383,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.4.17" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cb8f1d480b0ea3783ab015936d2a55c87e219676f0c0b7dec61494043f21857" +checksum = "df895a515f70646414f4b45c0b79082783b80552b373a68283012928df56f522" dependencies = [ "brotli", "flate2", @@ -434,7 +434,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -445,7 +445,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -746,7 +746,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -862,7 +862,7 @@ checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1030,7 +1030,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1151,6 +1151,16 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" version = "0.8.7" @@ -1168,9 +1178,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca741a962e1b0bff6d724a1a0958b686406e853bb14061f218562e1896f95e6" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -1331,7 +1341,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1342,7 +1352,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1415,7 +1425,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1479,7 +1489,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1502,7 +1512,7 @@ checksum = "a6cbae11b3de8fce2a456e8ea3dada226b35fe791f0dc1d360c0941f0bb681f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1590,7 +1600,7 @@ checksum = "a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1760,7 +1770,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1853,23 +1863,27 @@ dependencies = [ [[package]] name = "geyser-grpc-connector" version = "2.0.0" -source = "git+https://github.com/blockworks-foundation/geyser-grpc-connector.git?branch=2.0.16#e10e3f49a5e8d756481240c0b84ea941611f9870" +source = "git+https://github.com/blockworks-foundation/geyser-grpc-connector.git?branch=2.0.16#214886a27da719807fbc3cbdbf7fb717bc280e7e" dependencies = [ "anyhow", "async-stream", "base64 0.21.7", "bincode", + "clap 4.5.21", "csv", + "dashmap", "derive_more", "futures", "itertools 0.10.5", "log", + "lz4_flex", "merge-streams", - "solana-logger", + "regex", "solana-sdk", "tokio", + "tonic 0.12.3", + "tonic-health 0.12.3", "tracing", - "tracing-subscriber", "url", "yellowstone-grpc-client", "yellowstone-grpc-proto", @@ -2017,9 +2031,9 @@ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "heck" @@ -2417,7 +2431,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -2486,7 +2500,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.15.1", + "hashbrown 0.15.2", ] [[package]] @@ -2949,9 +2963,9 @@ dependencies = [ [[package]] name = "litemap" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" [[package]] name = "lock_api" @@ -2988,6 +3002,15 @@ dependencies = [ "libc", ] +[[package]] +name = "lz4_flex" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" +dependencies = [ + "twox-hash", +] + [[package]] name = "matchers" version = "0.1.0" @@ -3147,7 +3170,7 @@ dependencies = [ "openssl-probe", "openssl-sys", "schannel", - "security-framework", + "security-framework 2.11.1", "security-framework-sys", "tempfile", ] @@ -3244,7 +3267,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3325,7 +3348,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3387,7 +3410,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3552,7 +3575,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3593,9 +3616,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" [[package]] name = "postgres-derive" @@ -3606,7 +3629,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3687,7 +3710,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3720,9 +3743,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.90" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e1ced3fe749df87a909c23e9607ab9a09c8f0bedb7e03b8146f4c08c298673" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -3811,7 +3834,7 @@ dependencies = [ "prost 0.13.3", "prost-types 0.13.3", "regex", - "syn 2.0.87", + "syn 2.0.89", "tempfile", ] @@ -3838,7 +3861,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3851,7 +3874,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3904,7 +3927,7 @@ checksum = "9e2e25ee72f5b24d773cae88422baddefff7714f97aab68d96fe2b6fc4a28fb2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4323,9 +4346,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.17" +version = "0.23.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1a745511c54ba6d4465e8d5dfbd81b45791756de28d4981af70d6dca128f1e" +checksum = "9c9cc1d47e243d655ace55ed38201c19ae02c148ae56412ab8750e8f0166ab7f" dependencies = [ "log", "once_cell", @@ -4345,20 +4368,19 @@ dependencies = [ "openssl-probe", "rustls-pemfile 1.0.4", "schannel", - "security-framework", + "security-framework 2.11.1", ] [[package]] name = "rustls-native-certs" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" +checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" dependencies = [ "openssl-probe", - "rustls-pemfile 2.2.0", "rustls-pki-types", "schannel", - "security-framework", + "security-framework 3.0.1", ] [[package]] @@ -4450,7 +4472,7 @@ checksum = "1db149f81d46d2deba7cd3c50772474707729550221e69588478ebf9ada425ae" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4470,7 +4492,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ "bitflags 2.6.0", - "core-foundation", + "core-foundation 0.9.4", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1415a607e92bec364ea2cf9264646dcce0f91e6d65281bd6f2819cca3bf39c8" +dependencies = [ + "bitflags 2.6.0", + "core-foundation 0.10.0", "core-foundation-sys", "libc", "security-framework-sys", @@ -4533,7 +4568,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4579,7 +4614,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -5027,7 +5062,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -5926,7 +5961,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -5939,7 +5974,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6276,7 +6311,7 @@ checksum = "d9e8418ea6269dcfb01c712f0444d2c75542c04448b480e87de59d2865edc750" dependencies = [ "quote", "spl-discriminator-syn", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6288,7 +6323,7 @@ dependencies = [ "proc-macro2", "quote", "sha2 0.10.8", - "syn 2.0.87", + "syn 2.0.89", "thiserror", ] @@ -6355,7 +6390,7 @@ dependencies = [ "proc-macro2", "quote", "sha2 0.10.8", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6527,9 +6562,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" dependencies = [ "proc-macro2", "quote", @@ -6568,7 +6603,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6578,7 +6613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", "system-configuration-sys", ] @@ -6666,7 +6701,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6780,7 +6815,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -6835,7 +6870,7 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ - "rustls 0.23.17", + "rustls 0.23.18", "rustls-pki-types", "tokio", ] @@ -6964,6 +6999,7 @@ dependencies = [ "axum", "base64 0.22.1", "bytes", + "flate2", "h2 0.4.7", "http 1.1.0", "http-body 1.0.1", @@ -6974,7 +7010,7 @@ dependencies = [ "percent-encoding", "pin-project", "prost 0.13.3", - "rustls-native-certs 0.8.0", + "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", "socket2", "tokio", @@ -6997,7 +7033,7 @@ dependencies = [ "prost-build 0.13.3", "prost-types 0.13.3", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -7122,7 +7158,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -7211,6 +7247,16 @@ dependencies = [ "webpki-roots 0.24.0", ] +[[package]] +name = "twox-hash" +version = "1.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" +dependencies = [ + "cfg-if", + "static_assertions", +] + [[package]] name = "typenum" version = "1.17.0" @@ -7311,9 +7357,9 @@ dependencies = [ [[package]] name = "url" -version = "2.5.3" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" dependencies = [ "form_urlencoded", "idna", @@ -7432,7 +7478,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-shared", ] @@ -7466,7 +7512,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -7849,9 +7895,9 @@ dependencies = [ [[package]] name = "yoke" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" dependencies = [ "serde", "stable_deref_trait", @@ -7861,13 +7907,13 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "synstructure 0.13.1", ] @@ -7889,27 +7935,27 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] name = "zerofrom" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "synstructure 0.13.1", ] @@ -7930,7 +7976,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -7952,7 +7998,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] diff --git a/accounts-on-demand/src/accounts_on_demand.rs b/accounts-on-demand/src/accounts_on_demand.rs index 0370a574..806cbf56 100644 --- a/accounts-on-demand/src/accounts_on_demand.rs +++ b/accounts-on-demand/src/accounts_on_demand.rs @@ -257,6 +257,7 @@ impl AccountStorageInterface for AccountsOnDemand { min_context_slot: None, }, with_context: None, + sort_results: None, }, ) .await; diff --git a/accounts/src/lib.rs b/accounts/src/lib.rs index 787396cb..11d6260f 100644 --- a/accounts/src/lib.rs +++ b/accounts/src/lib.rs @@ -1,6 +1,3 @@ -pub use crate::store::*; - pub mod account_service; pub mod account_store_interface; pub mod inmemory_account_store; -mod store; diff --git a/accounts/src/store/accounts_db.rs b/accounts/src/store/accounts_db.rs deleted file mode 100644 index de94d956..00000000 --- a/accounts/src/store/accounts_db.rs +++ /dev/null @@ -1,70 +0,0 @@ -use std::path::PathBuf; - -use solana_accounts_db::accounts::Accounts; -use solana_accounts_db::accounts_db::AccountsDb; -use solana_sdk::account::{AccountSharedData, ReadableAccount}; -use solana_sdk::clock::Slot; -use solana_sdk::pubkey::Pubkey; - -fn new_accounts_db(account_paths: Vec) -> AccountsDb { - AccountsDb::new_single_for_tests() -} - -#[cfg(test)] -mod tests { - use std::sync::Arc; - - use crate::accounts_db::create_test_accounts; - use solana_accounts_db::accounts::Accounts; - use solana_accounts_db::accounts_db::AccountsDb; - use solana_sdk::pubkey::Pubkey; - - #[test] - fn test() { - let db = AccountsDb::new_single_for_tests(); - let accounts = Accounts::new(Arc::new(db)); - - let num_slots = 4; - let num_accounts = 10_000; - - println!("Creating {num_accounts} accounts"); - - let pubkeys: Vec<_> = (0..num_slots) - .into_iter() - .map(|slot| { - let mut pubkeys: Vec = vec![]; - create_test_accounts( - &accounts, - &mut pubkeys, - num_accounts / num_slots, - slot as u64, - ); - pubkeys - }) - .collect(); - - let pubkeys: Vec<_> = pubkeys.into_iter().flatten().collect(); - - println!("{:?}", pubkeys); - } -} - -pub fn create_test_accounts( - accounts: &Accounts, - pubkeys: &mut Vec, - num: usize, - slot: Slot, -) { - let data_size = 0; - - for t in 0..num { - let pubkey = solana_sdk::pubkey::new_rand(); - let account = AccountSharedData::new( - (t + 1) as u64, - data_size, - AccountSharedData::default().owner(), - ); - accounts.store_slow_uncached(slot, &pubkey, &account); - pubkeys.push(pubkey); - } -} diff --git a/accounts/src/store/mod.rs b/accounts/src/store/mod.rs deleted file mode 100644 index ea0b5533..00000000 --- a/accounts/src/store/mod.rs +++ /dev/null @@ -1 +0,0 @@ -pub mod accounts_db; diff --git a/address-lookup-tables/src/address_lookup_table_store.rs b/address-lookup-tables/src/address_lookup_table_store.rs index 5130612f..91714dd8 100644 --- a/address-lookup-tables/src/address_lookup_table_store.rs +++ b/address-lookup-tables/src/address_lookup_table_store.rs @@ -1,13 +1,15 @@ +use std::{sync::Arc, time::Duration}; + use async_trait::async_trait; use dashmap::DashMap; use itertools::Itertools; -use prometheus::{opts, register_int_gauge, IntGauge}; +use prometheus::{IntGauge, opts, register_int_gauge}; use serde::{Deserialize, Serialize}; -use solana_address_lookup_table_program::state::AddressLookupTable; -use solana_lite_rpc_core::traits::address_lookup_table_interface::AddressLookupTableInterface; use solana_rpc_client::nonblocking::rpc_client::RpcClient; use solana_sdk::{commitment_config::CommitmentConfig, pubkey::Pubkey}; -use std::{sync::Arc, time::Duration}; +use solana_sdk::address_lookup_table::state::AddressLookupTable; + +use solana_lite_rpc_core::traits::address_lookup_table_interface::AddressLookupTableInterface; lazy_static::lazy_static! { static ref LRPC_ALTS_IN_STORE: IntGauge = @@ -220,12 +222,12 @@ impl AddressLookupTableInterface for AddressLookupTableStore { &message_address_table_lookup.account_key, &message_address_table_lookup.writable_indexes, ) - .await, + .await, self.get_accounts( &message_address_table_lookup.account_key, &message_address_table_lookup.readonly_indexes, ) - .await, + .await, ) } diff --git a/cluster-endpoints/src/grpc_subscription.rs b/cluster-endpoints/src/grpc_subscription.rs index 57a55f38..9acd25e3 100644 --- a/cluster-endpoints/src/grpc_subscription.rs +++ b/cluster-endpoints/src/grpc_subscription.rs @@ -125,13 +125,13 @@ pub fn from_grpc_block_update( let readable_accounts = account_keys .iter() .enumerate() - .filter(|(index, _)| !message.is_maybe_writable(*index)) + .filter(|(index, _)| !message.is_maybe_writable(*index, None)) .map(|(_, pk)| *pk) .collect(); let writable_accounts = account_keys .iter() .enumerate() - .filter(|(index, _)| message.is_maybe_writable(*index)) + .filter(|(index, _)| message.is_maybe_writable(*index, None)) .map(|(_, pk)| *pk) .collect(); diff --git a/cluster-endpoints/src/rpc_polling/poll_blocks.rs b/cluster-endpoints/src/rpc_polling/poll_blocks.rs index a63dc0d9..0bf0b961 100644 --- a/cluster-endpoints/src/rpc_polling/poll_blocks.rs +++ b/cluster-endpoints/src/rpc_polling/poll_blocks.rs @@ -263,7 +263,7 @@ pub fn from_ui_block( let mut readable_accounts = vec![]; let mut writable_accounts = vec![]; for (index, account) in accounts.iter().enumerate() { - if tx.message.is_maybe_writable(index) { + if tx.message.is_maybe_writable(index, None) { writable_accounts.push(*account); } else { readable_accounts.push(*account); diff --git a/services/src/tpu_utils/tpu_service.rs b/services/src/tpu_utils/tpu_service.rs index 7e3ca354..b100137d 100644 --- a/services/src/tpu_utils/tpu_service.rs +++ b/services/src/tpu_utils/tpu_service.rs @@ -14,12 +14,9 @@ use solana_lite_rpc_core::traits::leaders_fetcher_interface::LeaderFetcherInterf use solana_lite_rpc_core::types::SlotStream; use solana_lite_rpc_core::AnyhowJoinHandle; use solana_sdk::{quic::QUIC_PORT_OFFSET, signature::Keypair, slot_history::Slot}; -use solana_streamer::tls_certificates::new_self_signed_tls_certificate; use std::collections::HashMap; -use std::{ - net::{IpAddr, Ipv4Addr}, - sync::Arc, -}; +use std::{sync::Arc}; +use solana_streamer::tls_certificates::new_dummy_x509_certificate; lazy_static::lazy_static! { static ref NB_CLUSTER_NODES: GenericGauge = @@ -67,12 +64,7 @@ impl TpuService { data_cache: DataCache, ) -> anyhow::Result { let (sender, _) = tokio::sync::broadcast::channel(config.maximum_transaction_in_queue); - let (certificate, key) = new_self_signed_tls_certificate( - identity.as_ref(), - IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)), - ) - .expect("Failed to initialize QUIC client certificates"); - + let (certificate, key) = new_dummy_x509_certificate(identity.as_ref()); log_gso_workaround(); let connection_manager = match config.tpu_connection_path {