diff --git a/Cargo.lock b/Cargo.lock index 97341456..c82f78ae 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4710,7 +4710,6 @@ dependencies = [ "eyre", "futures-util", "mev-rs", - "parking_lot 0.12.1", "pin-project", "reth", "reth-basic-payload-builder", diff --git a/mev-build-rs/Cargo.toml b/mev-build-rs/Cargo.toml index 1221326f..f1ffbb83 100644 --- a/mev-build-rs/Cargo.toml +++ b/mev-build-rs/Cargo.toml @@ -11,7 +11,6 @@ tokio = { version = "1.0", features = ["full"] } tokio-stream = "0.1.15" tracing = "0.1" async-trait = "0.1.53" -parking_lot = "0.12.1" pin-project = "1.0.12" futures-util = { workspace = true } diff --git a/mev-build-rs/src/auction_schedule.rs b/mev-build-rs/src/auction_schedule.rs index cebc13a6..22bd3a3d 100644 --- a/mev-build-rs/src/auction_schedule.rs +++ b/mev-build-rs/src/auction_schedule.rs @@ -1,6 +1,5 @@ use ethereum_consensus::primitives::{BlsPublicKey, ExecutionAddress, Slot}; use mev_rs::{types::ProposerSchedule, Relay}; -use parking_lot::Mutex; use std::{ collections::{HashMap, HashSet}, sync::Arc, @@ -18,32 +17,23 @@ pub struct Proposer { #[derive(Debug, Default)] pub struct AuctionSchedule { - state: Mutex, -} - -#[derive(Debug, Default)] -struct State { - // TODO: use CL to also restrict builds by proposer schedule: HashMap, } impl AuctionSchedule { - pub fn clear(&self, retain_slot: Slot) { - let mut state = self.state.lock(); - state.schedule.retain(|&slot, _| slot >= retain_slot); + pub fn clear(&mut self, retain_slot: Slot) { + self.schedule.retain(|&slot, _| slot >= retain_slot); } - pub fn take_matching_proposals(&self, slot: Slot) -> Option { - let mut state = self.state.lock(); - state.schedule.remove(&slot) + pub fn take_matching_proposals(&mut self, slot: Slot) -> Option { + self.schedule.remove(&slot) } - pub fn process(&self, relay: Arc, schedule: &[ProposerSchedule]) -> Vec { + pub fn process(&mut self, relay: Arc, schedule: &[ProposerSchedule]) -> Vec { let mut slots = Vec::with_capacity(schedule.len()); - let mut state = self.state.lock(); for entry in schedule { slots.push(entry.slot); - let slot = state.schedule.entry(entry.slot).or_default(); + let slot = self.schedule.entry(entry.slot).or_default(); let registration = &entry.entry.message; let proposer = Proposer { public_key: registration.public_key.clone(), diff --git a/mev-build-rs/src/auctioneer.rs b/mev-build-rs/src/auctioneer.rs index ff74d937..3c071514 100644 --- a/mev-build-rs/src/auctioneer.rs +++ b/mev-build-rs/src/auctioneer.rs @@ -74,7 +74,6 @@ pub struct Auctioneer { clock: broadcast::Receiver, builder: Sender, relays: Vec>, - // TODO: can drop mutex on inner auction_schedule: AuctionSchedule, open_auctions: HashMap>, executor: TaskExecutor,