You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
A "pinned" parachain block is one who's been referenced by a block in the relay chain. Blocks that have been freshly authored by collators are initially are unpinned, while they are circulated and gather attestations from validators. We don't want to keep an unbounded number of unpinned blocks, because it can be a DoS vector and complicates fork-choice.
However, assuming that collators are good and broadcast out the block data for unpinned blocks in a way which is easily obtainable by peers, it is more efficient for other full nodes to keep the unpinned block with the expectation that it likely will be pinned. This means that as soon as the block is pinned, a collator can build on top of it for the next block, rather than having to fetch it and then start building.
Every parachain block needs to reference some data from Polkadot (#5) including incoming messages and relay chain block hash.
There should be an import queue verifier which accepts new blocks if:
they are pinned
they are unpinned and the Polkadot block hash referenced is a leaf.