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

Load contract state lazily in cargo-concordium #168

Open
abizjak opened this issue Mar 21, 2022 · 0 comments
Open

Load contract state lazily in cargo-concordium #168

abizjak opened this issue Mar 21, 2022 · 0 comments
Labels
good first issue Good for newcomers [Prio] Low Should be fixed if time permits but can be postponed. [Size] Medium [Type] Task An additional feature or improvement.

Comments

@abizjak
Copy link
Contributor

abizjak commented Mar 21, 2022

Task description

Currently cargo-concordium loads the entire contract state into memory before executing. This is probably good enough for most practical uses, but it is nevertheless wasteful.

Contract state supports lazy loading of state. Only the state root needs to be loaded upfront, the rest on demand.

This task is to revise how cargo-concordium stores and loads contract state. Essentially the change needs to be made so that state is not "serialized" and "deserialized", but instead "store_update" and "load" are used, with a backing store.

@abizjak abizjak added good first issue Good for newcomers [Prio] Low Should be fixed if time permits but can be postponed. [Size] Small [Type] Task An additional feature or improvement. labels Mar 21, 2022
@abizjak abizjak transferred this issue from Concordium/concordium-wasm-smart-contracts Aug 12, 2022
@limemloh limemloh transferred this issue from Concordium/concordium-base May 16, 2024
@limemloh limemloh added the [Size] Medium label Sep 5, 2024 — with Linear
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers [Prio] Low Should be fixed if time permits but can be postponed. [Size] Medium [Type] Task An additional feature or improvement.
Projects
None yet
Development

No branches or pull requests

2 participants