celestiaorg / celestiaorg/rsmt2d
EDS thread-safety
- Dominant language
- Go
- Stars
- 169
- Forks
- 87
- Avg merge
- 8h 9m
- Merged PRs (30d)
- 7
Description
Right now, the EDS does not have any guarantees regarding thread safety for read and write operations. Users like celestia-node end up implementing custom synchronization solutions around EDS, while the best practice for Go is to have thread safety provided by the library.
The proposal is to add an additional `SyncEDS` wrapping the existing `EDS` structure extracted from the celestia-node. Alternatively, we can make the existing `EDS` synchronized by default.
Contributor guide
Research direction
Start by reading the existing EDS structure and API, then compare the synchronization implementation extracted from celestia-node. Decide whether synchronization belongs in a new SyncEDS wrapper or the default EDS. Done means read and write operations have documented thread-safety guarantees without requiring users to add custom synchronization.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100