-
Notifications
You must be signed in to change notification settings - Fork 839
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
Replace free for all collation in cumulus
runtimes
#1251
Replace free for all collation in cumulus
runtimes
#1251
Conversation
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
This doesn't seem to achieve the goals of #103.
|
My understanding of #103 is that all runtimes running "free for all" (glutton, seedling and shell) should instead run with Aura.
Aura needs a session manager, and from what I understand the However, I don't think I have the whole picture because I don't understand what the client side has to do with this specifically. As far as I understand, in runtimes such as
Yes, as Aura needs a session manager and the new |
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
…-for-all-collator-selection Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Got it. We discussed two things in #103 and one of them was to build a new free-for-all implementation, so I thought this might've been about that. I think the |
This PR doesn't include changes I expected in Particularly, I think we'd want to change the glutton runtime case to |
I spoke with @joepetrowski and it turns out we don't need to change the authority set in shell either, so I will drop the |
I don't understand exactly what you mean, is it related to the other thing in #103? For reference:
I'm not familiar with the code you're pointing at, but judging by the name it seems a shell node would need to run Aura first in order to use |
The impression I get is that by changing to |
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
…-for-all-collator-selection
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
cumulus
runtimescumulus
runtimes
…-for-all-collator-selection
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
…-for-all-collator-selection Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, will approve once a few questions re async backing are answered. Comments on Glutton apply to all runtimes.
In cumulus_pallet_parachain_system::Config
, I think you also need to change:
type CheckAssociatedRelayNumber = RelayNumberMonotonicallyIncreases;
type ConsensusHook = cumulus_pallet_aura_ext::FixedVelocityConsensusHook<
Runtime,
RELAY_CHAIN_SLOT_DURATION_MILLIS,
BLOCK_PROCESSING_VELOCITY,
UNINCLUDED_SEGMENT_CAPACITY,
>;
impl pallet_timestamp::Config for Runtime { | ||
type Moment = u64; | ||
type OnTimestampSet = Aura; | ||
// TODO: set this to 0 so that anyone can produce blocks at anytime? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be OK but maybe @Sophia-Gold can confirm. If OK then remove the TODO.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's wrong with SLOT_DURATION / 2
? I've used this in the upgraded tick and it works fine. Otoh, one would think 0 would be okay as well. I don't totally understand this, but anything less than SLOT_DURATION
would seem to work.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's nothing wrong with SLOT_DURATION / 2
, let's leave it as is. I will remove the TODO
.
// The main stage. | ||
Glutton: pallet_glutton::{Pallet, Call, Storage, Event, Config<T>} = 20, | ||
Glutton: pallet_glutton::{Pallet, Call, Storage, Event, Config<T>} = 30, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changing indices is generally a no-no. Probably fine for Glutton since we don't have any in the wild. But what is the reason for this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was shuffling them around while building the runtime and I didn't check the original indices when I posted the PR. Good catch, restored it now.
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
From the documentation of those items, I think you're right and it should be the way you describe above. I updated the config, PTAL. |
…-for-all-collator-selection
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
…-for-all-collator-selection
Partially fixes #103
This PR removes instances of "free for all" collation in the
glutton
,shell
, andseedling
runtimes and replaces them with Aura instances. Aura is configured without a session manager, so the initial authority set cannot be changed later on.