Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability of parachain data #371

@rphmeier

Description

@rphmeier

(without economic games)

Part 1: Data store

We would want to plug this into the client's RocksDB instance somehow, and answer BlockData requests out of it.

In the consensus worker, we shouldn't cast an Available vote until we've actually ensured availability of the data.

https://github.com/paritytech/polkadot/blob/ddc8d705570fda5f492895373b69b9b84cae1d69/polkadot/consensus/src/shared_table/mod.rs#L256-L257

should be preceded by a call to store.make_available(block_data, extrinsic) or something similar.

For now, just storing block data, indexed by (Hash, ParaId), the relay chain block hash and parachain ID.

Part 2: Network protocol for fetching data

This would be used as a last resort in case the data doesn't appear to be easily available.
Finding validator who is bonded to have the data and requesting from them. The validator answers out of the data store

We would add this in the PolkadotProtocol, probably with a trait object DataStore

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions