Pov recovery for parachains (#445)

* Start with a failing integration test & some refactorings

* More work

* Make it "work"

* Add `NullConsensus` for the test

* More refactorings

* Move stuff over to its own crate

* Refactorings

* Integrate it into `service` and make the test working

* Docs and some exit condition

* Use the real import queue

* Fix tests

* Update client/pov-recovery/src/active_candidate_recovery.rs

Co-authored-by: Bernhard Schuster <bernhard@ahoi.io>

* Fetch slot duration from the relay chain

* Docs

* Fixes

Co-authored-by: Bernhard Schuster <bernhard@ahoi.io>
This commit is contained in:
Bastian Köcher
2021-05-26 15:02:42 +02:00
committed by GitHub
parent 36c6da180a
commit 7ffb205b0d
21 changed files with 2098 additions and 1198 deletions
+1 -1
View File
@@ -14,7 +14,7 @@ derive_more = "0.15.0"
exit-future = "0.1.4"
futures = { version = "0.3.1", features = ["compat"] }
log = "0.4.8"
parking_lot = "0.9.0"
parking_lot = "0.10.2"
trie-root = "0.15.2"
codec = { package = "parity-scale-codec", version = "2.0.0" }
structopt = "0.3.3"
+4 -3
View File
@@ -243,14 +243,14 @@ where
let prometheus_registry = parachain_config.prometheus_registry().cloned();
let transaction_pool = params.transaction_pool.clone();
let mut task_manager = params.task_manager;
let import_queue = params.import_queue;
let import_queue = cumulus_client_service::SharedImportQueue::new(params.import_queue);
let (network, network_status_sinks, system_rpc_tx, start_network) =
sc_service::build_network(sc_service::BuildNetworkParams {
config: &parachain_config,
client: client.clone(),
transaction_pool: transaction_pool.clone(),
spawn_handle: task_manager.spawn_handle(),
import_queue,
import_queue: import_queue.clone(),
on_demand: None,
block_announce_validator_builder: Some(Box::new(|_| block_announce_validator)),
})?;
@@ -304,6 +304,7 @@ where
relay_chain_full_node,
spawner,
parachain_consensus,
import_queue,
};
start_collator(params).await?;
@@ -313,7 +314,7 @@ where
announce_block,
task_manager: &mut task_manager,
para_id: id,
polkadot_full_node: relay_chain_full_node,
relay_chain_full_node,
};
start_full_node(params)?;