Merge pull request #15 from godmodegalactus/migrate_to_crate

migrate git submodules to cargo
This commit is contained in:
galactus 2023-02-18 15:15:29 +01:00 committed by GitHub
commit 9e13cfcc93
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 1939 additions and 1557 deletions

7
.gitmodules vendored
View File

@ -1,7 +0,0 @@
[submodule "deps/mango-v3"]
path = deps/mango-v3
url = https://github.com/blockworks-foundation/mango-v3
[submodule "deps/solana"]
path = deps/solana
url = https://github.com/solana-labs/solana
branch = v1.14.7

3417
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -23,35 +23,28 @@ serde = "1.0.136"
serde_derive = "1.0.103"
serde_json = "1.0.79"
serde_yaml = "0.8.23"
mango = { path = "deps/mango-v3/program", default-features = false, features = ["no-entrypoint"] }
mango-common = { path = "deps/mango-v3/common" }
solana-bench-tps = { path = "deps/solana/bench-tps" }
solana-clap-utils = { path = "deps/solana/clap-utils" }
solana-cli-config = { path = "deps/solana/cli-config" }
solana-client = { path = "deps/solana/client" }
solana-core = { path = "deps/solana/core" }
solana-faucet = { path = "deps/solana/faucet" }
solana-genesis = { path = "deps/solana/genesis" }
solana-gossip = { path = "deps/solana/gossip" }
solana-logger = { path = "deps/solana/logger" }
solana-measure = { path = "deps/solana/measure" }
solana-metrics = { path = "deps/solana/metrics" }
solana-net-utils = { path = "deps/solana/net-utils" }
solana-rpc = { path = "deps/solana/rpc" }
solana-runtime = { path = "deps/solana/runtime" }
solana-sdk = { path = "deps/solana/sdk" }
solana-streamer = { path = "deps/solana/streamer" }
solana-transaction-status = { path = "deps/solana/transaction-status" }
solana-version = { path = "deps/solana/version" }
mango = { git = "https://github.com/blockworks-foundation/mango-v3.git", branch = "mango_bencher_compatible", default-features = false, features = ["no-entrypoint"] }
mango-common = { git = "https://github.com/blockworks-foundation/mango-v3.git", branch = "mango_bencher_compatible" }
solana-client = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-core = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-metrics = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-rpc = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-runtime = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-sdk = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-clap-utils = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-cli-config = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-net-utils = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-version = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-logger = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-transaction-status = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
solana-quic-client = { git = "https://github.com/solana-labs/solana.git", branch="v1.15" }
thiserror = "1.0"
solana-program = ">=1.9.0"
csv = "1.0.0"
[dev-dependencies]
serial_test = "0.6.0"
solana-local-cluster = { path = "deps/solana/local-cluster" }
solana-test-validator = { path = "deps/solana/test-validator" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

View File

@ -13,8 +13,9 @@ use solana_bench_mango::{
states::{BlockData, PerpMarketCache, TransactionConfirmRecord, TransactionSendRecord},
};
use solana_client::{
connection_cache::ConnectionCache, rpc_client::RpcClient, tpu_client::TpuClient,
rpc_client::RpcClient, tpu_client::TpuClient, connection_cache::ConnectionCache,
};
use solana_quic_client::{QuicPool, QuicConnectionManager, QuicConfig};
use solana_sdk::commitment_config::CommitmentConfig;
use std::{
@ -23,7 +24,7 @@ use std::{
atomic::{AtomicBool, AtomicU64, Ordering},
Arc, RwLock,
},
thread::{Builder, JoinHandle},
thread::{Builder, JoinHandle}, net::{IpAddr, Ipv4Addr},
};
fn main() {
@ -76,15 +77,28 @@ fn main() {
))
});
let tpu_client_pool = Arc::new(RotatingQueue::<Arc<TpuClient>>::new(
let connection_cache = ConnectionCache::new_with_client_options(
4,
None,
Some((id, IpAddr::V4(Ipv4Addr::new(0, 0, 0, 0)))),
None,
);
let quic_connection_cache = if let ConnectionCache::Quic(connection_cache) = connection_cache {
Some(connection_cache)
} else {
None
};
let tpu_client_pool = Arc::new(RotatingQueue::<Arc<TpuClient<QuicPool, QuicConnectionManager, QuicConfig>>>::new(
number_of_tpu_clients,
|| {
let quic_connection_cache = quic_connection_cache.clone();
Arc::new(
TpuClient::new_with_connection_cache(
rpc_clients.get().clone(),
&websocket_url,
solana_client::tpu_client::TpuClientConfig::default(),
Arc::new(ConnectionCache::default()),
quic_connection_cache.unwrap(),
)
.unwrap(),
)

View File

@ -17,6 +17,7 @@ use mango::{
};
use solana_client::tpu_client::TpuClient;
use solana_program::pubkey::Pubkey;
use solana_quic_client::{QuicPool, QuicConnectionManager, QuicConfig};
use solana_sdk::{
hash::Hash, instruction::Instruction, message::Message, signature::Keypair, signer::Signer,
transaction::Transaction,
@ -119,7 +120,7 @@ pub fn send_mm_transactions(
quotes_per_second: u64,
perp_market_caches: &Vec<PerpMarketCache>,
tx_record_sx: &Sender<TransactionSendRecord>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient>>>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient<QuicPool, QuicConnectionManager, QuicConfig>>>>,
mango_account_pk: Pubkey,
mango_account_signer: &Keypair,
blockhash: Arc<RwLock<Hash>>,
@ -158,7 +159,7 @@ pub fn send_mm_transactions_batched(
quotes_per_second: u64,
perp_market_caches: &Vec<PerpMarketCache>,
tx_record_sx: &Sender<TransactionSendRecord>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient>>>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient<QuicPool, QuicConnectionManager, QuicConfig>>>>,
mango_account_pk: Pubkey,
mango_account_signer: &Keypair,
blockhash: Arc<RwLock<Hash>>,
@ -219,7 +220,7 @@ pub fn start_market_making_threads(
exit_signal: Arc<AtomicBool>,
blockhash: Arc<RwLock<Hash>>,
current_slot: Arc<AtomicU64>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient>>>,
tpu_client_pool: Arc<RotatingQueue<Arc<TpuClient<QuicPool, QuicConnectionManager, QuicConfig>>>>,
duration: &Duration,
quotes_per_second: u64,
txs_batch_size: Option<usize>,