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
To sync to the blockchain, nodes need to be able to retrieve blocks from peers. These blocks must be advertised to peers to be validated and applied in chronological order against state data before participating in the network. In order to begin syncing, a sync server should be implemented to advertise blocks from peers for other peers to request.
jessicadaugherty
changed the title
[Consensus] State Sync - Create Server to Advertise Blocks
[Consensus] State Sync - Server to Advertise Blocks
Dec 19, 2022
## Description
This PR aims to implement state sync server module.
## Issue
Fixes#409
## Type of change
Please mark the relevant option(s):
- [X] New feature, functionality or library
- [ ] Bug fix
- [X] Code health or cleanup
- [ ] Major breaking change
- [ ] Documentation
- [ ] Other <!-- add details here if it a different type of change -->
## List of changes
<!-- REMOVE this comment block after following the instructions
List out all the changes made
-->
- Add `state_sync` submodule to Consensus Module
- Implement state sync server to advertise blocks and metadata
- Create new `state_snyc_handler.go` source file that handles
stateSyncMessages sent to the consensus module
- Write state sync server tests, update hotstuff test
- Add `ConsensusStateSync` interface to the shared module
## Testing
- [X] `make develop_test`
- [X]
[LocalNet](https://github.com/pokt-network/pocket/blob/main/docs/development/README.md)
w/ all of the steps outlined in the `README`
<!-- REMOVE this comment block after following the instructions
If you added additional tests or infrastructure, describe it here.
Bonus points for images and videos or gifs.
-->
## Required Checklist
- [X] I have performed a self-review of my own code
- [X] I have commented my code, particularly in hard-to-understand areas
- [X] I have tested my changes using the available tooling
- [X] I have updated the corresponding CHANGELOG
### If Applicable Checklist
- [ ] I have updated the corresponding README(s); local and/or global
- [X] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added, or updated,
[mermaid.js](https://mermaid-js.github.io) diagrams in the corresponding
README(s)
- [ ] I have added, or updated, documentation and
[mermaid.js](https://mermaid-js.github.io) diagrams in `shared/docs/*`
if I updated `shared/*`README(s)
---------
Co-authored-by: Daniel Olshansky <[email protected]>
Co-authored-by: Daniel Olshansky <[email protected]>
Objective
To sync to the blockchain, nodes need to be able to retrieve blocks from peers. These blocks must be advertised to peers to be validated and applied in chronological order against state data before participating in the network. In order to begin syncing, a sync server should be implemented to advertise blocks from peers for other peers to request.
Origin Document
V0 Client Side Challenge Mechanism
Goals
Deliverable
Non-goals / Non-deliverables
General issue deliverables
Testing Methodology
make test_all
LocalNet
is still functioning correctly by following the instructions at docs/development/README.mdCreator: @jessicadaugherty
The text was updated successfully, but these errors were encountered: