Andronik Ordian
33fe763188
some fixes to please cargo-spellcheck ( #3550 )
...
* some fixes to please cargo-spellcheck
* some (not all) fixes for the impl guide
* fix
2021-08-02 11:00:04 +00:00
Robert Habermeier
5da762e728
Avoid querying the local validator in availability recovery ( #2792 )
...
* guide: don't request availability data from ourselves
* add QueryAllChunks message
* implement QueryAllChunks
* remove unused relay_parent from StoreChunk
* test QueryAllChunks
* fast paths make short roads
* test early exit behavior
2021-04-01 15:57:41 +02:00
Robert Habermeier
e65cad69ec
Fix future-polling loop in availability and add a better early-exit ( #2779 )
...
* onto the front
* fix early exit for waiting for requests
* add logging back
2021-03-31 17:35:17 +02:00
Robert Habermeier
08d5b268a0
Retry availability until the receiver of the request is dropped ( #2763 )
...
* guide updates
* keep interactions alive until receivers drop
* retry indefinitely
* cancel approval tasks on finality
* use swap_remove instead of remove
2021-03-30 17:33:38 +02:00
Robert Habermeier
8a396c678f
Port availability recovery to use req/res ( #2694 )
...
* add AvailableDataFetchingRequest
* rename AvailabilityFetchingRequest to ChunkFetchingRequest
* rename AvailabilityFetchingResponse to Chunk_
* add AvailableDataFetching request
* add available data fetching request to availability recovery message
* remove availability recovery message
* fix
* update network bridge
* port availability recovery to request/response
* use validators.len(), not shuffling
* fix availability recovery tests
* update guide
* Update node/network/availability-recovery/src/lib.rs
Co-authored-by: Bernhard Schuster <bernhard@ahoi.io >
* Update node/network/availability-recovery/src/lib.rs
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
* remove println
Co-authored-by: Bernhard Schuster <bernhard@ahoi.io >
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
2021-03-25 15:34:24 +01:00
Robert Habermeier
b7aac51341
A fast-path for requesting AvailableData from backing validators ( #2453 )
...
* guide changes for a fast-path requesting from backing validators
* add backing group to availability recovery message
* add new phase to interaction
* typos
* add full data messages
* handle new network messages
* dispatch full data requests
* cleanup
* check chunk index
* test for invalid recovery
* tests
* Typos.
* fix some grumbles
* be more explicit about error handling and control flow
* fast-path param
* use with_chunks_only in Service
Co-authored-by: Robert Klotzner <robert.klotzner@gmx.at >
2021-02-17 13:51:50 -06:00
Robert Habermeier
9071120de1
guide: Availability Recovery ( #2011 )
...
* expand description
* basics of availability recovery
* finish availability recovery
* fill out missing text
* Update roadmap/implementers-guide/src/node/availability/availability-recovery.md
Co-authored-by: Fedor Sakharov <fedor.sakharov@gmail.com >
* fix signal handling
Co-authored-by: Fedor Sakharov <fedor.sakharov@gmail.com >
2020-12-01 14:58:31 -05:00
Robert Habermeier
43be64f2f7
Implementer's guide: Approval Voting Subsystem ( #1691 )
...
* add storage for approvals module
* basics of approval logic
* fix links
* Session info module
* create an approvals_inherent module
* integrate approvals module with inclusion
* Remove approvals runtime
* tweak mentions of on-chain logic
* add note on finality-grandpa voting rule
* elaborate on node-side components
* stub for availability recovery
* add another note on voting rule
* Beginnings of approval subsystems
* flesh out approval voting now
* logic for checking assignment certs
* initial scheduler logic
* scheduler logic
* adjst tranche taking logic
* approval voting import
* approval work (voting side)
* amend some TODOs
* mark some TODOs
* describe `ApprovedAncestor`
* reference protocol-approval.md
* clarity on bitfield
* remove approvals_inherent
* tweak session_info module according to review
* formatting & nits
Co-authored-by: Robert Habermeier <robert@Roberts-MacBook-Pro.local >
2020-10-30 22:07:52 -05:00