pov-recovery: Enable pov-recovery as well on full nodes (#927)

* pov-recovery: Enable pov-recovery as well on full nodes

Pov recovery was before only enabled for collators. The reason behind this was prevention of spam of
the relay chain for block recovery. However, recent events has shown that this wasn't a good idea.
So, this pr enables pov-recover for normal full nodes as well, but with a much higher delay before
trying to recover a block. This means that full nodes will wait in minimum 2.5 minutes and in
maximum 5 minutes before recovering a block. This should give collators in "normal mode" enough time
to recover a block (they wait in maximum 6 seconds after they have seen a new candidate in the relay
chain) before recovering a block. So, we should hopefully not spam the relay chain.

* FMT

* Fixes

* Fix documentation
This commit is contained in:
Bastian Köcher
2022-01-21 20:16:11 +01:00
committed by GitHub
parent 2327eae5c9
commit 9dd0f5c225
7 changed files with 106 additions and 26 deletions
+5 -1
View File
@@ -301,6 +301,8 @@ where
Arc::new(move |hash, data| network.announce_block(hash, data))
};
let relay_chain_slot_duration = Duration::from_secs(6);
if validator {
let parachain_consensus = build_consensus(
client.clone(),
@@ -327,7 +329,7 @@ where
parachain_consensus,
import_queue,
collator_key,
slot_duration: Duration::from_secs(6),
relay_chain_slot_duration,
};
start_collator(params).await?;
@@ -338,6 +340,8 @@ where
task_manager: &mut task_manager,
para_id: id,
relay_chain_interface,
relay_chain_slot_duration,
import_queue,
};
start_full_node(params)?;