db

package
v1.0.0-alpha.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2020 License: GPL-3.0 Imports: 19 Imported by: 0

Documentation

Overview

Package db defines a persistent backend for the validator service.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func TempDir

func TempDir() string

TempDir returns a directory path for temporary test storage.

Types

type Store

type Store struct {
	// contains filtered or unexported fields
}

Store defines an implementation of the Prysm Database interface using BoltDB as the underlying persistent kv-store for eth2.

func NewKVStore

func NewKVStore(dirPath string, pubKeys [][48]byte) (*Store, error)

NewKVStore initializes a new boltDB key-value store at the directory path specified, creates the kv-buckets based on the schema, and stores an open connection db object as a property of the Store struct.

func SetupDB

func SetupDB(t testing.TB, pubkeys [][48]byte) *Store

SetupDB instantiates and returns a DB instance for the validator client.

func (*Store) AttestationHistoryForPubKeys

func (db *Store) AttestationHistoryForPubKeys(ctx context.Context, publicKeys [][48]byte) (map[[48]byte]*slashpb.AttestationHistory, error)

AttestationHistoryForPubKeys accepts an array of validator public keys and returns a mapping of corresponding attestation history.

func (*Store) ClearDB

func (db *Store) ClearDB() error

ClearDB removes any previously stored data at the configured data directory.

func (*Store) Close

func (db *Store) Close() error

Close closes the underlying boltdb database.

func (*Store) DatabasePath

func (db *Store) DatabasePath() string

DatabasePath at which this database writes files.

func (*Store) DeleteAttestationHistory

func (db *Store) DeleteAttestationHistory(ctx context.Context, pubkey []byte) error

DeleteAttestationHistory deletes the attestation history for the corresponding validator public key.

func (*Store) DeleteProposalHistory

func (db *Store) DeleteProposalHistory(ctx context.Context, pubkey []byte) error

DeleteProposalHistory deletes the proposal history for the corresponding validator public key.

func (*Store) ProposalHistoryForEpoch

func (db *Store) ProposalHistoryForEpoch(ctx context.Context, publicKey []byte, epoch uint64) (bitfield.Bitlist, error)

ProposalHistoryForEpoch accepts a validator public key and returns the corresponding proposal history. Returns nil if there is no proposal history for the validator.

func (*Store) SaveAttestationHistoryForPubKeys

func (db *Store) SaveAttestationHistoryForPubKeys(ctx context.Context, historyByPubKeys map[[48]byte]*slashpb.AttestationHistory) error

SaveAttestationHistoryForPubKeys returns the attestation histories for the requested validator public keys.

func (*Store) SaveProposalHistoryForEpoch

func (db *Store) SaveProposalHistoryForEpoch(ctx context.Context, pubKey []byte, epoch uint64, slotBits bitfield.Bitlist) error

SaveProposalHistoryForEpoch returns the proposal history for the requested validator public key.

func (*Store) Size

func (db *Store) Size() (int64, error)

Size returns the db size in bytes.

Directories

Path Synopsis
Package iface defines an interface for the validator database.
Package iface defines an interface for the validator database.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL