Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
bump versions and use defaults
  • Loading branch information
Michal Swietek committed Dec 21, 2022
commit 021ecb50afdf9f3c8c3f930f1431b072ac4ad238
13 changes: 0 additions & 13 deletions finality-aleph/src/abft/common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -34,19 +34,6 @@ pub fn unit_creation_delay_fn(unit_creation_delay: UnitCreationDelay) -> DelaySc
})
}

pub fn coord_request_delay_fn() -> DelaySchedule {
Arc::new(|t| match t {
0 => Duration::from_millis(0),
1 => Duration::from_millis(50),
2 => Duration::from_millis(1000),
_ => Duration::from_millis(3000 * (t as u64 - 2)),
})
}

pub fn coord_request_recipients_fn() -> RecipientCountSchedule {
Arc::new(|t| if t <= 2 { 3 } else { 1 })
}

pub struct DelayConfig {
pub tick_interval: Duration,
pub requests_interval: Duration,
Expand Down
32 changes: 8 additions & 24 deletions finality-aleph/src/abft/current.rs
Original file line number Diff line number Diff line change
@@ -1,18 +1,10 @@
use std::{sync::Arc, time::Duration};

use current_aleph_bft::{Config, LocalIO, Terminator};
use current_aleph_bft::{default_config, Config, LocalIO, Terminator};
use log::debug;
use sp_blockchain::HeaderBackend;
use sp_runtime::traits::Block;

use crate::{
abft::{
common::{
coord_request_delay_fn, coord_request_recipients_fn, unit_creation_delay_fn,
AlephConfig, DelayConfig,
},
NetworkWrapper, SpawnHandleT,
},
abft::{NetworkWrapper, SpawnHandleT},
crypto::Signature,
data_io::{AlephData, OrderedDataInterpreter},
network::data::Network,
Expand All @@ -24,8 +16,10 @@ use crate::{
CurrentNetworkData, Hasher, Keychain, NodeIndex, SessionId, SignatureSet, UnitCreationDelay,
};

use super::common::unit_creation_delay_fn;

/// Version of the current abft
pub const VERSION: u32 = 1;
pub const VERSION: u32 = 2;

pub fn run_member<
B: Block,
Expand Down Expand Up @@ -78,18 +72,8 @@ pub fn create_aleph_config(
session_id: SessionId,
unit_creation_delay: UnitCreationDelay,
) -> Config {
let delay_config = DelayConfig {
tick_interval: Duration::from_millis(10),
requests_interval: Duration::from_millis(3000),
unit_rebroadcast_interval_min: Duration::from_millis(15000),
unit_rebroadcast_interval_max: Duration::from_millis(20000),
unit_creation_delay: unit_creation_delay_fn(unit_creation_delay),
coord_request_delay: coord_request_delay_fn(),
coord_request_recipients: coord_request_recipients_fn(),
parent_request_delay: Arc::new(|_| Duration::from_millis(3000)),
parent_request_recipients: Arc::new(|_| 1),
newest_request_delay: Arc::new(|_| Duration::from_millis(3000)),
};
let mut config = default_config(n_members.into(), node_id.into(), session_id.0 as u64);
config.delay_config.unit_creation_delay = unit_creation_delay_fn(unit_creation_delay);

AlephConfig::new(delay_config, n_members, node_id, session_id).into()
config
}
32 changes: 8 additions & 24 deletions finality-aleph/src/abft/legacy.rs
Original file line number Diff line number Diff line change
@@ -1,18 +1,10 @@
use std::{sync::Arc, time::Duration};

use legacy_aleph_bft::{Config, LocalIO, Terminator};
use legacy_aleph_bft::{default_config, Config, LocalIO, Terminator};
use log::debug;
use sp_blockchain::HeaderBackend;
use sp_runtime::traits::Block;

use crate::{
abft::{
common::{
coord_request_delay_fn, coord_request_recipients_fn, unit_creation_delay_fn,
AlephConfig, DelayConfig,
},
NetworkWrapper, SpawnHandleT,
},
abft::{NetworkWrapper, SpawnHandleT},
data_io::{AlephData, OrderedDataInterpreter},
network::data::Network,
oneshot,
Expand All @@ -23,8 +15,10 @@ use crate::{
Keychain, LegacyNetworkData, NodeIndex, SessionId, UnitCreationDelay,
};

use super::common::unit_creation_delay_fn;

/// Version of the legacy abft
pub const VERSION: u32 = 0;
pub const VERSION: u32 = 1;

pub fn run_member<
B: Block,
Expand Down Expand Up @@ -74,18 +68,8 @@ pub fn create_aleph_config(
session_id: SessionId,
unit_creation_delay: UnitCreationDelay,
) -> Config {
let delay_config = DelayConfig {
tick_interval: Duration::from_millis(10),
requests_interval: Duration::from_millis(3000),
unit_rebroadcast_interval_min: Duration::from_millis(15000),
unit_rebroadcast_interval_max: Duration::from_millis(20000),
unit_creation_delay: unit_creation_delay_fn(unit_creation_delay),
coord_request_delay: coord_request_delay_fn(),
coord_request_recipients: coord_request_recipients_fn(),
parent_request_delay: Arc::new(|_| Duration::from_millis(3000)),
parent_request_recipients: Arc::new(|_| 1),
newest_request_delay: Arc::new(|_| Duration::from_millis(3000)),
};
let mut config = default_config(n_members.into(), node_id.into(), session_id.0 as u64);
config.delay_config.unit_creation_delay = unit_creation_delay_fn(unit_creation_delay);

AlephConfig::new(delay_config, n_members, node_id, session_id).into()
config
}