-
Notifications
You must be signed in to change notification settings - Fork 766
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failing test zombienet-cumulus-0005-migrate_solo_to_para
#7105
Comments
With the collation fairness (the PR you linked) we limit the number of collations a collator can provide up to the number of claims for its para id in the claim queue. So the collator is building two blocks per relay parent no matter what and they are built on top of each other(right?). In this case sooner or later a collation will be dropped and the rest of the collations will be unbackable, because of the missing candidate. DQ but solo chain (Dave) means just a single collator node producing blocks on its own. Is this correct? If yes - there are no validators to throttle it and that's why it is producing blocks. I haven't run the test locally but I'm a bit puzzled why Eve doesn't produce blocks at all. I think it should produce at least one or two blocks depending on the claim queue and async backing parameter values. I also believe the test will work fine with |
The way this works is that the lookahead collator is producing two blocks per sslot until the unincluded segment is full. Then it will produce one block per relay.
Dave is a normal parachain here. Eve will stay at 0 and not produce blocks until dave has emitted its custom header from the pvf. This is expected. Eve does not find its own included header on the relay chain. Basically dave plants it there, then dave stops production and eve starts.
The main problem I am seeing is that this is a relay chain side change. So if this goes live it will cause this situation for all live parachains with the lookahead right? We don't have control when parachains will upgrade. I am not familiar with the changes done in that PR, so the question is, will this cause problems for running collators? |
zombienet-cumulus-0005-migrate_solo_to_para
has been failing consistently.File:
polkadot-sdk/cumulus/zombienet/tests/0005-migrate_solo_to_para.toml
Line 23 in 4059282
Expectation
This test spawns two parachains with the same para id but different genesis, dave and eve. Node dave will produce blocks and after a few blocks output custom
head_data
through the PVF. Thishead_data
contains the header that matches node eves parachain, which should now start producing blocks.Reality
Dave starts producing blocks, but after the custom head data is submitted, eve does not start producing blocks. Instead dave continues to produce blocks.
Investigation
The culprit seems to be #4880, before that PR the test was passing consistently. The question is why the custom head data presented by dave is not set as included head.
In the logs the following messages appear a lot:
Apparently some seconding limit was reached and the block in question not included. Modifying the lookahead collator here to build always only a single block fixes the issue and makes the test pass:
polkadot-sdk/cumulus/client/consensus/aura/src/collators/lookahead.rs
Line 360 in 4059282
cc @tdimitrov any ideas what is happening here?
The text was updated successfully, but these errors were encountered: