beacon-chain-java
beacon-chain-java copied to clipboard
Consistent/atomic storage updates
Specification assumes blocks and their corresponding states should be stored consistently. E.g. fork choice/on_attestation assumes that if a block is present in the storage, then its state should be present too. Also, there may be some consistency constraints among store.checkpoint_states, store.finalized_checkpoints, store.justified_checkpoints, related block states, etc.
These consistency should be supported on DB level via an appropriate mechanism, either atomic transactions, snapshots or journalling. There is a related issue #190.