-
Notifications
You must be signed in to change notification settings - Fork 33
Closed
Labels
consensusConsensus specific changesConsensus specific changescoreCore infrastructure - protocol relatedCore infrastructure - protocol related
Milestone
Description
Objective
Design an interface and outline a flow for a block by block state sync
Origin Document
As described in the V1 Pocket Network Consensus Specification, we need to fully implement state sync to enable new and existing nodes to stay in sync with each other.
Goals / Deliverables
- A sequence diagram showing the flow of blocks and data between different components during state sync using mermaid flow charts. For an example, see what we have in the persistence module architecture doc.
- A flow chart showing which components and modules are involved in this process using mermaid flow charts
- The interface that each node will need to expose in order to request & receive blocks
- Follow up tasks of things that need to be design and implemented (e.g. fast sync design, slow sync implementation, etc...)
Non-goals
- Implementing any part of state sync (i.e. no code)
- Fast sync design (i.e. no synching from a snapshot yet)
Industry References
As a starting point, we can reference how other chains implement this mechanism.
Tendermint
- https://github.com/tendermint/tendermint/blob/master/docs/architecture/adr-042-state-sync.md
Flow
Aptos
Creator: @Olshansk
Co-Owners: @andrewnguyen22
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
consensusConsensus specific changesConsensus specific changescoreCore infrastructure - protocol relatedCore infrastructure - protocol related
Type
Projects
Status
Done