-
Notifications
You must be signed in to change notification settings - Fork 0
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
[Epic] M1: Support temporary and persistent storage #54
Comments
It looks like this is going to be a problem
The problem is that durability represents independent keyspaces in ledgers, see here https://developers.stellar.org/docs/learn/smart-contract-internals/state-archival. In particular:
i.e. As our setter contract uses Here are the examples of usages of all three qualifiers:
One way to test that would be to deploy both Timelock and Token contracts, and to try fetcher on both of them. But I did have problems with the Token contract, specifically with the allowance part... So another way would be to extend the Setter contract with some storage variables of all three kinds, and test on it. |
I've extended the setter contract like this: env.storage().instance().set(&MY_U32, &zero_u32);
env.storage().temporary().set(&MY_U32, &1_u32);
env.storage().persistent().set(&MY_U32, &2_u32); It appears that
Although, for some reason |
In addition to keying the storage by contract id (#121), we will need to key the storage by durability. |
Soroban has unusual features regarding data persistence. We are not accounting for that currently.
Some high-level issues; for the full list, see the milestone
ledgerEntryRemoved
#122The text was updated successfully, but these errors were encountered: