You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We're moving towards individual subsystems in core relying on read-only snapshots to query ledger state. There are several data structures that together comprise a complete "ledger state": the bucketlist, ledger header, and soroban config. The problem is that currently all these pieces of ledger state live in different places. Specifically, ledger header and soroban config live inside the LedgerManager, while the bucketlist lives inside of the bucketlist snapshot. This is quite error-prone and it definitely a footgun. It would be much easier to reason about consistency of ledger state snapshots if all relevant pieces lived inside of a single snapshot object. There is some WIP changes in #4597 already, which we can probably revive when we prioritize this.
The text was updated successfully, but these errors were encountered:
We're moving towards individual subsystems in core relying on read-only snapshots to query ledger state. There are several data structures that together comprise a complete "ledger state": the bucketlist, ledger header, and soroban config. The problem is that currently all these pieces of ledger state live in different places. Specifically, ledger header and soroban config live inside the LedgerManager, while the bucketlist lives inside of the bucketlist snapshot. This is quite error-prone and it definitely a footgun. It would be much easier to reason about consistency of ledger state snapshots if all relevant pieces lived inside of a single snapshot object. There is some WIP changes in #4597 already, which we can probably revive when we prioritize this.
The text was updated successfully, but these errors were encountered: