From 9b013fbc5ddf5dbdb99ccee8727e45ceb8462450 Mon Sep 17 00:00:00 2001 From: aggstam Date: Thu, 1 Dec 2022 16:11:00 +0200 Subject: [PATCH] consensus: removed redundant leaders_spent_coins --- src/consensus/proto/protocol_sync_consensus.rs | 2 -- src/consensus/state.rs | 9 ++------- src/consensus/task/consensus_sync.rs | 1 - src/consensus/validator.rs | 3 +-- 4 files changed, 3 insertions(+), 12 deletions(-) diff --git a/src/consensus/proto/protocol_sync_consensus.rs b/src/consensus/proto/protocol_sync_consensus.rs index b8e78977d..567cfd699 100644 --- a/src/consensus/proto/protocol_sync_consensus.rs +++ b/src/consensus/proto/protocol_sync_consensus.rs @@ -79,14 +79,12 @@ impl ProtocolSyncConsensus { let unconfirmed_txs = lock.unconfirmed_txs.clone(); let slot_checkpoints = lock.consensus.slot_checkpoints.clone(); let leaders_nullifiers = lock.consensus.leaders_nullifiers.clone(); - let leaders_spent_coins = lock.consensus.leaders_spent_coins.clone(); let response = ConsensusResponse { offset, proposals, unconfirmed_txs, slot_checkpoints, leaders_nullifiers, - leaders_spent_coins, }; if let Err(e) = self.channel.send(response).await { error!("ProtocolSyncConsensus::handle_receive_request() channel send fail: {}", e); diff --git a/src/consensus/state.rs b/src/consensus/state.rs index c440e62cd..7c893fdfb 100644 --- a/src/consensus/state.rs +++ b/src/consensus/state.rs @@ -64,8 +64,6 @@ pub struct ConsensusState { pub coins_tree: BridgeTree, /// Seen nullifiers from proposals pub leaders_nullifiers: Vec, - /// Seen spent coins from proposals - pub leaders_spent_coins: Vec<(pallas::Base, pallas::Base)>, /// Leaders count history pub leaders_history: Vec, } @@ -91,7 +89,6 @@ impl ConsensusState { coins: vec![], coins_tree: BridgeTree::::new(constants::EPOCH_LENGTH * 100), leaders_nullifiers: vec![], - leaders_spent_coins: vec![], leaders_history: vec![0], }) } @@ -194,10 +191,9 @@ impl ConsensusState { self.generate_slot_checkpoint(sigma1.clone(), sigma2.clone()); return Ok(false) } + let eta = self.get_eta(); - // At start of epoch, relative slot is 0. if self.coins.len() == 0 { - //TODO: DRK coin need to be burned, and consensus coin to be minted. self.coins = self.create_coins(eta).await?; } self.epoch = epoch; @@ -243,6 +239,7 @@ impl ConsensusState { /// Generate coins for provided sigmas. /// NOTE: The strategy here is having a single competing coin per slot. + // TODO: DRK coin need to be burned, and consensus coin to be minted. async fn create_coins(&mut self, eta: pallas::Base) -> Result> { let slot = self.current_slot(); @@ -611,8 +608,6 @@ pub struct ConsensusResponse { pub slot_checkpoints: Vec, /// Seen nullifiers from proposals pub leaders_nullifiers: Vec, - /// Seen spent coins from proposals - pub leaders_spent_coins: Vec<(pallas::Base, pallas::Base)>, } impl net::Message for ConsensusResponse { diff --git a/src/consensus/task/consensus_sync.rs b/src/consensus/task/consensus_sync.rs index e29a0ddd0..d061d155b 100644 --- a/src/consensus/task/consensus_sync.rs +++ b/src/consensus/task/consensus_sync.rs @@ -61,7 +61,6 @@ pub async fn consensus_sync_task(p2p: P2pPtr, state: ValidatorStatePtr) -> Resul lock.unconfirmed_txs = response.unconfirmed_txs.clone(); lock.consensus.slot_checkpoints = response.slot_checkpoints.clone(); lock.consensus.leaders_nullifiers = response.leaders_nullifiers.clone(); - lock.consensus.leaders_spent_coins = response.leaders_spent_coins.clone(); break } diff --git a/src/consensus/validator.rs b/src/consensus/validator.rs index 1358edf62..653c36e88 100644 --- a/src/consensus/validator.rs +++ b/src/consensus/validator.rs @@ -496,9 +496,8 @@ impl ValidatorState { } }; - // Store proposal coin info + // Store proposal coin nullifiers self.consensus.leaders_nullifiers.push(prop_sn); - self.consensus.leaders_spent_coins.push((prop_cm_x, prop_cm_y)); Ok(()) }