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

Remove the PartSetHeader where possible #418

Closed
2 of 3 tasks
evan-forbes opened this issue Jun 16, 2021 · 7 comments
Closed
2 of 3 tasks

Remove the PartSetHeader where possible #418

evan-forbes opened this issue Jun 16, 2021 · 7 comments

Comments

@evan-forbes
Copy link
Member

evan-forbes commented Jun 16, 2021

Summary

Remove the PartSetHeader.

Details

As mentioned in #184, we now are propagating block data via IPFS and no longer need to do so via the PartSetHeader. After #218 and #374 are completed, we will have the necessary groundwork finished to actually remove the PartSetHeader completely. Complete removal is the next step to moving on with replacing the BlockID with the Header hash.

Action Items

References

part of completing #184

@Wondertan
Copy link
Member

#293 is also highly related. PartSetHeader is used extensively in consensus reactor and it might be necessary to implement block propagation first before removing PartSetHeader

@liamsi
Copy link
Member

liamsi commented Jun 16, 2021

and it might be necessary to implement block propagation first before removing PartSetHeader

It might also be possible to simply use the existing tendermint block propagation mechanism (maybe using erasure coded shares instead of current chunking) to unblock this and use the DAHeader instead of partsetheader where needed.

@liamsi
Copy link
Member

liamsi commented Jun 25, 2021

ref: #389 #423 #184

@evan-forbes
Copy link
Member Author

Update: Instead of removing the PartSetHeader completely, will still use it, or something similar (#427 & #434), to propagate blocks during consensus. Regardless, we should still follow through with removal of the PartSetHeader where possible. Starting with #456.

@evan-forbes
Copy link
Member Author

evan-forbes commented Aug 5, 2021

Update: Removing the PartSetHeader from Vote and Commit would require a refactor in the consensus reactor to change how the PSH is passed. It should be noted that while the PartSetHeader is still included in Vote, it is no longer signed over since #457

Removing the PSH from Commit is doable without a large refactor, see https://github.com/celestiaorg/lazyledger-core/tree/evan/remove-psh-4, but would require significant changes to tests. I think we should continue with the removal of the PSH from the Commit after we update to a newer version of tendermint.

@liamsi
Copy link
Member

liamsi commented Aug 6, 2021

I think we should continue with the removal of the PSH from the Commit after we update to a newer version of tendermint.

Yeah, I agree there is no rush and it makes sense to update to a newer tendermint version first.

@evan-forbes
Copy link
Member Author

we have since decided to keep tendermint as a black box, and complete removal of the PSH is no longer an option. That being said, we still have plans to experiment with removing it from the header and not signing over it #511

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants