Save GenesisValidatorsRoot from WaitForChainStart (#7855)

* Add GenValRoot dbs

* Test genvalroot

* Fix names

* Add overwrite rejection

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
This commit is contained in:
Ivan Martinez
2020-11-20 13:06:12 -05:00
committed by GitHub
parent 1b012ccfa5
commit 4dc65c5787
9 changed files with 105 additions and 3 deletions

View File

@@ -16,10 +16,16 @@ type ValidatorDB interface {
DatabasePath() string
ClearDB() error
UpdatePublicKeysBuckets(publicKeys [][48]byte) error
// Genesis information related methods.
GenesisValidatorsRoot(ctx context.Context) ([]byte, error)
SaveGenesisValidatorsRoot(ctx context.Context, genValRoot []byte) error
// Proposer protection related methods.
ProposalHistoryForEpoch(ctx context.Context, publicKey []byte, epoch uint64) (bitfield.Bitlist, error)
SaveProposalHistoryForEpoch(ctx context.Context, publicKey []byte, epoch uint64, history bitfield.Bitlist) error
//new data structure methods
// New data structure methods
ProposalHistoryForSlot(ctx context.Context, publicKey []byte, slot uint64) ([]byte, error)
SaveProposalHistoryForSlot(ctx context.Context, pubKey []byte, slot uint64, signingRoot []byte) error
SaveProposalHistoryForPubKeysV2(ctx context.Context, proposals map[[48]byte]kv.ProposalHistoryForPubkey) error