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

Fast sync for domain #2616

Open
NingLin-P opened this issue Mar 14, 2024 · 1 comment
Open

Fast sync for domain #2616

NingLin-P opened this issue Mar 14, 2024 · 1 comment

Comments

@NingLin-P
Copy link
Member

Currently, sync domain block from other operator nodes is not supported yet, the operator node needs to sync the consensus block and derive the domain block from it locally.

After a domain is instantiated at consensus block #n, to run an operator node for the domain, the node usually need to first sync the consensus chain from the genesis block up to block #n, then the domain node will start and derive the genesis domain block from consensus block # and if there is a bundle in the coming consensus block it will derive a domain block.

While the operator node has to sync the consensus block #n to derive the genesis domain block and any consensus blocks after #n (which potentially contains bundle) to derive the domain block, there is no need for the operator node to sync the consensus block #0..#n-1, instead the operator node can sync the consensus state at block #n-1 without syncing and executing the block and start sync consensus block from #n.

After syncing domain block from other operator nodes is supported, the domain sync process can be further optimized, the operator node can sync the domain chain from other peers from the genesis domain block to the latest confirmed domain block, after that the operator node need to sync the consensus chain from there and derive domain block locally so it can generate and submit fraud proof if there is a bad ER exist.

@shamil-gadelshin
Copy link
Member

The consensus chain fast sync (WIP) could work here as well. It seems possible to change the fast sync from the "last archived block" to target block #n

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

2 participants