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

Pchain Merkle DB #1742

Closed
wants to merge 256 commits into from
Closed

Pchain Merkle DB #1742

wants to merge 256 commits into from

Conversation

abi87
Copy link
Contributor

@abi87 abi87 commented Jul 20, 2023

Why this should be merged

It shouldn't!

How this works

Just trying to rebuild P-chain state on top of the MerkleDB. This requires also starting to define what should be merklelized (and prepared for state sync) and what is strictly local state.

How this was tested

  • Move all state.State UTs to state.MerkleState and make them pass
  • Pass all e2e tests
  • Sync mainnet
  • Sync mainnet again a few times, logging merkle root and checking it does not vary across runs (thanks @darioush for the suggestion)
  • Check diffs correctness against state.State implementation
  • Reintroduce state.State metrics into state.MerkleState
  • Rebase over stakers_update_ops to make sure stakers update operations are duly ported to merkleDB
  • Enable profiling

abi87 and others added 30 commits April 13, 2023 18:46
Co-authored-by: Aaron Buchwald <[email protected]>
@abi87 abi87 linked an issue Dec 20, 2023 that may be closed by this pull request
@abi87 abi87 requested a review from dhrubabasu as a code owner January 4, 2024 10:32
Copy link

This PR has become stale because it has been open for 30 days with no activity. Adding the lifecycle/frozen label will cause this PR to ignore lifecycle events.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DO NOT MERGE This PR must not be merged in its current state lifecycle/stale
Projects
Archived in project
Status: In Progress 🏗
Development

Successfully merging this pull request may close these issues.

P-chain state sync
6 participants