Skip to content
This repository has been archived by the owner on Feb 27, 2023. It is now read-only.

Don't recompute the root on every update; only on commit #72

Open
musalbas opened this issue Sep 16, 2022 · 0 comments
Open

Don't recompute the root on every update; only on commit #72

musalbas opened this issue Sep 16, 2022 · 0 comments
Assignees

Comments

@musalbas
Copy link
Member

musalbas commented Sep 16, 2022

We should pull @roysc's rewrite of smt.go upstream here (https://github.com/vulcanize/smt), as it provides a substantial and well-written performance improvement by not recomputing the root on every update, that also produces the same roots as this smt.

In order to do so we need to first:

  1. Re-implement deepsubtree;
  2. Re-add value storage.

Given that the Cosmos SDK store v2 may be abandoned, we are looking into resuming the work of integrating SMT into store v1 (celestiaorg/cosmos-sdk#12) by @tzdybal. The way that we re-add value storage will depend on the requirements of store v1 and in particular its requirements for historical state access, rollback, and pruning, so this needs to be analyzed first.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
No open projects
Status: TODO
Development

No branches or pull requests

2 participants