Improved TTL testing UX and cleaned up storage diagnostics. #1412
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What
Improved TTL testing UX and cleaned up storage diagnostics.
Both improvements rely on passing host into storage methods. This also allows us to use the ledger info and to encapsulate detailed diagnostic errors in the storage module. We have to still keep the old storage methods around. There are a few users of storage getters, which probably don't have to use it, but the clean up will have some time and can only be performed in v22 due to semver.
There is a subtle change in observations because we now only allocate a new object in diagnostic mode (charged to shadow budget). However, this shouldn't cause divergence (because this version of env won't run in p20) and is highly unlikely to affect replay of p20 with the new env. If necessary, we can still emulate the p20 behavior.
The TTL testing support includes:
live_until_ledger
of all the ledger entriesWhy
Improving testing UX
Known limitations
N/A