Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[optimization] Strategy for pruning Headers and Shares #272

Open
Wondertan opened this issue Dec 7, 2021 · 5 comments
Open

[optimization] Strategy for pruning Headers and Shares #272

Wondertan opened this issue Dec 7, 2021 · 5 comments
Labels
architecture Architecture / design-related issues area:header Extended header area:shares Shares and samples enhancement New feature or request

Comments

@Wondertan
Copy link
Member

Hmm, does it make sense for light nodes to keep shares only for headers within unbonding period and not beyond? Same for headers, a light node may simply delete all the past headers beyond unbonding period, as it does not trust them anyway.

Originally posted by @Wondertan in #244 (comment)

@musalbas
Copy link
Member

musalbas commented Dec 7, 2021

Ideally there should be an option for light clients should keep shares permanently so that they can participate in data storage, for security reasons (which they will only be queried in the worse case scenario e.g. full nodes will request the shares from them).

As we discussed in the offsite, there must be some node that does data availability sampling, that is able to share samples with full nodes, otherwise data availability sampling won't be secure as nodes can't reconstruct missing data.

@Wondertan
Copy link
Member Author

@musalbas, what should be the default case: automated pruning of old shared or storing of old shares? Should we understand the storage costs before doing a decision or just stick with storing by default, as a security requirement? If that's a security requirement for the network, shouldn't we then forget about pruning at all?

@musalbas
Copy link
Member

musalbas commented Dec 7, 2021

We can discuss what the defaults should be later, but at minimum the following must be true for the DAS story to be completed end-to-end:

there must be some node that does data availability sampling, that is able to share samples with full nodes, otherwise data availability sampling won't be secure as nodes can't reconstruct missing data

@adlerjohn
Copy link
Member

My personal preference is for defaults to be more secure even if more burdensome. That being said, both options can be implemented and we can decide on defaults later.

@renaynay renaynay changed the title gc/pruning: Strategy for pruning Headers and Shares [optimization] Strategy for pruning Headers and Shares Apr 26, 2022
@renaynay renaynay added enhancement New feature or request area:header Extended header area:shares Shares and samples architecture Architecture / design-related issues labels Apr 26, 2022
@renaynay renaynay moved this to TODO in Celestia Node Apr 26, 2022
@Wondertan
Copy link
Member Author

Related to #2033

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
architecture Architecture / design-related issues area:header Extended header area:shares Shares and samples enhancement New feature or request
Projects
No open projects
Status: TODO
Development

No branches or pull requests

4 participants