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

Use a call proof in the Grandpa warp syncing instead of multiple storage proofs #2080

Closed
tomaka opened this issue Feb 20, 2022 · 2 comments · Fixed by #2578
Closed

Use a call proof in the Grandpa warp syncing instead of multiple storage proofs #2080

tomaka opened this issue Feb 20, 2022 · 2 comments · Fixed by #2578

Comments

@tomaka
Copy link
Contributor

tomaka commented Feb 20, 2022

At the moment, the warp syncing code calls the runtime, then sends one storage proof every time the runtime accesses the storage.

This means a lot of redundancy in the proofs, but more importantly a lot of network round trips.
Right now on a simple dev chain we do 12 round trips just for that. If the ping is 100ms, that means it takes 1.2 seconds instead of only 100ms.

@tomaka
Copy link
Contributor Author

tomaka commented Apr 12, 2022

For context, the reason why it was done with simple storage proofs is that I expected one or two storage items to be accessed, rather than 12. At the time, call proofs weren't properly implemented.

@tomaka
Copy link
Contributor Author

tomaka commented Aug 3, 2022

At the moment, warp syncing Westend (with a moderately old checkpoint) on my local machine takes about 2.5 to 5 seconds.
In my work-in-progress branch, this is now down to 1.5 to 2 seconds.

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

Successfully merging a pull request may close this issue.

1 participant