Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
977da03
Increase delay for pov-recovery
skunert Jan 25, 2023
dbef277
Update client/service/src/lib.rs
skunert Jan 25, 2023
72e7646
Comment
skunert Jan 25, 2023
190b012
FMT
skunert Jan 27, 2023
2278719
Merge branch 'master' into skunert/pov-recovery-increase-delay
skunert Jan 27, 2023
b63782f
Clear waiting_recovery when block is recovered or recovery failed
skunert Jan 31, 2023
3c660da
Introduce recovery queue that preserved insertion order
skunert Jan 31, 2023
8eaec6d
Better error logs
skunert Jan 31, 2023
8da6d8c
Decrease slot duration
skunert Feb 1, 2023
993dba5
Style improvements
skunert Feb 2, 2023
bfbae02
Add option to use unordered queue
skunert Feb 2, 2023
1139b80
Maintain cache of finalized blocks
skunert Feb 3, 2023
18e63a5
Wait for one relay chain slot before recovery
skunert Feb 3, 2023
c3ae356
Make retries testable
skunert Feb 3, 2023
508bee6
fmt
skunert Feb 3, 2023
d40ff11
Improve docs
skunert Feb 3, 2023
be9d523
Improve docs
skunert Feb 6, 2023
2bf0824
Simplify RecoveryQueue
skunert Feb 6, 2023
f744bec
Remove unwanted changes
skunert Feb 6, 2023
92c582b
Merge branch 'master' into skunert/experimental-pov-changes
skunert Feb 6, 2023
2512d09
Adjust to comments
skunert Feb 6, 2023
2af35d9
Apply suggestions from code review
skunert Feb 7, 2023
70ab63b
Move recovery delay into the queue
skunert Feb 8, 2023
0da8638
Check for finalized number
skunert Feb 8, 2023
6f0d8ef
Clean up
skunert Feb 8, 2023
3809eed
Use timer
skunert Feb 9, 2023
5bf500a
Simplify implementation
skunert Feb 8, 2023
49710ce
Revert "Use timer"
skunert Feb 9, 2023
78ccb2a
Properly clear `to_recover` flag
skunert Feb 9, 2023
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
Style improvements
  • Loading branch information
skunert committed Feb 2, 2023
commit 993dba56f972e48bfeb3edf9a2e927824101a45d
30 changes: 15 additions & 15 deletions client/consensus/common/src/parachain_consensus.rs
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ where
Ok(finalized_heads_stream) => finalized_heads_stream,
Err(err) => {
tracing::error!(target: LOG_TARGET, error = ?err, "Unable to retrieve finalized heads stream.");
return;
return
},
};

Expand All @@ -67,7 +67,7 @@ where
h
} else {
tracing::debug!(target: LOG_TARGET, "Stopping following finalized head.");
return;
return
};

let header = match Block::Header::decode(&mut &finalized_head[..]) {
Expand All @@ -78,7 +78,7 @@ where
error = ?err,
"Could not decode parachain header while following finalized heads.",
);
continue;
continue
},
};

Expand Down Expand Up @@ -171,15 +171,15 @@ async fn follow_new_best<P, R, Block, B>(
R: RelayChainInterface + Clone,
B: Backend<Block>,
{
let new_best_heads = match new_best_heads(relay_chain, para_id).await {
Ok(best_heads_stream) => best_heads_stream.fuse(),
let new_best_relay_heads = match new_best_heads(relay_chain, para_id).await {
Ok(best_relay_heads_stream) => best_relay_heads_stream.fuse(),
Err(err) => {
tracing::error!(target: LOG_TARGET, error = ?err, "Unable to retrieve best heads stream.");
return;
return
},
};

pin_mut!(new_best_heads);
pin_mut!(new_best_relay_heads);

let mut imported_blocks = parachain.import_notification_stream().fuse();
// The unset best header of the parachain. Will be `Some(_)` when we have imported a relay chain
Expand All @@ -189,10 +189,10 @@ async fn follow_new_best<P, R, Block, B>(

loop {
select! {
h = new_best_heads.next() => {
match h {
Some(h) => handle_new_best_parachain_head(
h,
relay_header = new_best_relay_heads.next() => {
match relay_header {
Some(relay_header) => handle_new_best_parachain_head(
relay_header,
&*parachain,
&mut unset_best_header,
recovery_chan_tx.as_mut(),
Expand Down Expand Up @@ -252,12 +252,12 @@ async fn handle_new_block_imported<Block, P>(
};

let unset_hash = if notification.header.number() < unset_best_header.number() {
return;
return
} else if notification.header.number() == unset_best_header.number() {
let unset_hash = unset_best_header.hash();

if unset_hash != notification.hash {
return;
return
} else {
unset_hash
}
Expand Down Expand Up @@ -307,7 +307,7 @@ async fn handle_new_best_parachain_head<Block, P>(
error = ?err,
"Could not decode Parachain header while following best heads.",
);
return;
return
},
};

Expand Down Expand Up @@ -391,7 +391,7 @@ where
"Skipping importing block as new best block, because there already exists a \
best block with an higher number",
);
return;
return
}

// Make it the new best block
Expand Down
2 changes: 1 addition & 1 deletion zombienet/tests/0002-pov_recovery.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ add_to_genesis = false
validator = true # collator
image = "{{COL_IMAGE}}"
command = "test-parachain"
args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"]
args = ["-lparachain::availability=trace,sync=debug,parachain=debug,cumulus-pov-recovery=debug,cumulus-consensus=debug", "--use-null-consensus", "--disable-block-announcements", "--bootnodes {{'bob'|zombie('multiAddress')}}", "--", "--reserved-only", "--reserved-nodes {{'ferdie'|zombie('multiAddress')}}"]

# run eve as a parachain full node
[[parachains.collators]]
Expand Down