mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-12 17:01:09 +00:00
Extract MAX_FINALITY_LAG constant from relay_chain_selection (#5159)
* Fix for Issue #4788 * Updated fix. Moved constant to node primitives * cargo fmt * Update node/primitives/src/lib.rs Co-authored-by: Andronik <write@reusable.software> * Update node/core/dispute-coordinator/src/real/initialized.rs Co-authored-by: Andronik <write@reusable.software>
This commit is contained in:
@@ -29,8 +29,9 @@
|
||||
//! We maintain a rolling window of session indices. This starts as empty
|
||||
|
||||
use polkadot_node_jaeger as jaeger;
|
||||
use polkadot_node_primitives::approval::{
|
||||
self as approval_types, BlockApprovalMeta, RelayVRFStory,
|
||||
use polkadot_node_primitives::{
|
||||
approval::{self as approval_types, BlockApprovalMeta, RelayVRFStory},
|
||||
MAX_FINALITY_LAG,
|
||||
};
|
||||
use polkadot_node_subsystem::{
|
||||
messages::{
|
||||
@@ -299,7 +300,7 @@ pub(crate) async fn handle_new_head(
|
||||
head: Hash,
|
||||
finalized_number: &Option<BlockNumber>,
|
||||
) -> SubsystemResult<Vec<BlockImportedCandidates>> {
|
||||
const MAX_HEADS_LOOK_BACK: BlockNumber = 500;
|
||||
const MAX_HEADS_LOOK_BACK: BlockNumber = MAX_FINALITY_LAG;
|
||||
|
||||
let mut span = jaeger::Span::new(head, "approval-checking-import");
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ use sc_keystore::LocalKeystore;
|
||||
|
||||
use polkadot_node_primitives::{
|
||||
CandidateVotes, DisputeMessage, DisputeMessageCheckError, SignedDisputeStatement,
|
||||
DISPUTE_WINDOW,
|
||||
DISPUTE_WINDOW, MAX_FINALITY_LAG,
|
||||
};
|
||||
use polkadot_node_subsystem::{
|
||||
messages::{
|
||||
@@ -69,9 +69,9 @@ use super::{
|
||||
};
|
||||
|
||||
// The capacity and scrape depth are equal to the maximum allowed unfinalized depth.
|
||||
const LRU_SCRAPED_BLOCKS_CAPACITY: usize = 500;
|
||||
// This is in sync with `MAX_FINALITY_LAG` in relay chain selection.
|
||||
const MAX_BATCH_SCRAPE_ANCESTORS: u32 = 500;
|
||||
const LRU_SCRAPED_BLOCKS_CAPACITY: usize = MAX_FINALITY_LAG as usize;
|
||||
// This is in sync with `MAX_FINALITY_LAG` in relay chain selection & node primitives.
|
||||
const MAX_BATCH_SCRAPE_ANCESTORS: u32 = MAX_FINALITY_LAG;
|
||||
|
||||
/// After the first active leaves update we transition to `Initialized` state.
|
||||
///
|
||||
|
||||
@@ -76,6 +76,11 @@ pub const BACKING_EXECUTION_TIMEOUT: Duration = Duration::from_secs(2);
|
||||
/// dispute participants.
|
||||
pub const APPROVAL_EXECUTION_TIMEOUT: Duration = Duration::from_secs(6);
|
||||
|
||||
/// Linked to `MAX_FINALITY_LAG` in relay chain selection,
|
||||
/// `MAX_HEADS_LOOK_BACK` in `approval-voting` and
|
||||
/// `MAX_BATCH_SCRAPE_ANCESTORS` in `dispute-coordinator`
|
||||
pub const MAX_FINALITY_LAG: u32 = 500;
|
||||
|
||||
/// Type of a session window size.
|
||||
///
|
||||
/// We are not using `NonZeroU32` here because `expect` and `unwrap` are not yet const, so global
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
use super::{HeaderProvider, HeaderProviderProvider};
|
||||
use consensus_common::{Error as ConsensusError, SelectChain};
|
||||
use futures::channel::oneshot;
|
||||
use polkadot_node_primitives::MAX_FINALITY_LAG as PRIMITIVES_MAX_FINALITY_LAG;
|
||||
use polkadot_node_subsystem_util::metrics::{self, prometheus};
|
||||
use polkadot_overseer::{AllMessages, Handle};
|
||||
use polkadot_primitives::v2::{
|
||||
@@ -53,9 +54,9 @@ use std::sync::Arc;
|
||||
/// or disputes.
|
||||
///
|
||||
/// This is a safety net that should be removed at some point in the future.
|
||||
// Until it's not, make sure to also update `MAX_HEADS_LOOK_BACK` in `approval-voting`
|
||||
// and `MAX_BATCH_SCRAPE_ANCESTORS` in `dispute-coordinator` when changing its value.
|
||||
const MAX_FINALITY_LAG: polkadot_primitives::v2::BlockNumber = 500;
|
||||
// In sync with `MAX_HEADS_LOOK_BACK` in `approval-voting`
|
||||
// and `MAX_BATCH_SCRAPE_ANCESTORS` in `dispute-coordinator`.
|
||||
const MAX_FINALITY_LAG: polkadot_primitives::v2::BlockNumber = PRIMITIVES_MAX_FINALITY_LAG;
|
||||
|
||||
const LOG_TARGET: &str = "parachain::chain-selection";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user