-
Notifications
You must be signed in to change notification settings - Fork 1.6k
ValidationData refactoring #1539
Comments
cc @pepyakin - what should go in |
Would that be |
@coriolinus yep, I edited the Rust example, if that's what you were referring to |
I'd put the following items in
post #1556 update: Outgoing channel queue size limits and upward message limits are not part of #1503 as of now, but tracked in a separate issue #1534 . But yeah they should go there. For tentative design of XCMP we would like to have roughly:
|
#1503 (review)
Rephrased more abstractly here:
We currently maintain an invariant that everything that is backed in the relay chain satisfies a number of checks on the commitments of the candidate - that they meet size limits, only send messages on valid channels, etc.
However, it is not clear to me how the validators are meant to check those things off-chain, because there is currently no runtime API that exposes these things. It's also not clear to me how collators are meant to construct blocks that satisfy these limits. I think we want to expose this data from the runtime API, but we don't need to keep it available for secondary checkers because of the invariant I mentioned at the beginning.
I think we should have two main changes to
ValidationData
with a couple of implied secondary changes.Main changes:
LocalValidationData
andGlobalValidationData
into a singleValidationData
struct.ValidationData
intoPersistedValidationData
andNonPersistedValidationData
.The result would look something like this:
Secondary changes:
global_validation_data
andlocal_validation_data
runtime APIsvalidation_data_hash
in candidate descriptors should reference only the persisted validation data.AvailableData
struct should store only the persisted validation data.These changes encompass both the guide and the code-base.
The text was updated successfully, but these errors were encountered: