v0.2300.9 Latest Latest

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

Go to latest
Published: Nov 30, 2023 License: Apache-2.0 Imports: 36 Imported by: 0




View Source
const (

	// LogEventCheckpointSyncSuccess is a log event value that signals that checkpoint sync was successful.
	LogEventCheckpointSyncSuccess = "worker/storage/checkpoint-sync-success"
View Source
const (
	// RoundLatest is a magic value for the latest round.
	RoundLatest = math.MaxUint64


View Source
var ErrNoUsableCheckpoints = errors.New("storage: no checkpoint could be synced")

ErrNoUsableCheckpoints is the error returned when none of the checkpoints could be synced.

View Source
var (

	// ErrNonLocalBackend is the error returned when the storage backend doesn't implement the LocalBackend interface.
	ErrNonLocalBackend = errors.New("storage: storage backend doesn't support local storage")


This section is empty.


type CheckpointSyncConfig added in v0.2200.0

type CheckpointSyncConfig struct {
	// Disabled specifies whether checkpoint sync should be disabled. In this case the node will
	// only sync by applying all diffs from genesis.
	Disabled bool

	// ChunkFetcherCount specifies the number of parallel checkpoint chunk fetchers.
	ChunkFetcherCount uint

CheckpointSyncConfig is the checkpoint sync configuration.

func (*CheckpointSyncConfig) Validate added in v0.2200.0

func (cfg *CheckpointSyncConfig) Validate() error

Validate performs configuration checks.

type Node

type Node struct {
	// contains filtered or unexported fields

Node watches blocks for storage changes.

func NewNode

func NewNode(
	commonNode *committee.Node,
	fetchPool *workerpool.Pool,
	roleProvider registration.RoleProvider,
	rpcRoleProvider registration.RoleProvider,
	workerCommonCfg workerCommon.Config,
	localStorage storageApi.LocalBackend,
	checkpointerCfg *checkpoint.CheckpointerConfig,
	checkpointSyncCfg *CheckpointSyncConfig,
) (*Node, error)

func (*Node) Cleanup

func (n *Node) Cleanup()

Cleanup cleans up any leftover state after the worker is stopped.

func (*Node) GetLastSynced

func (n *Node) GetLastSynced() (uint64, storageApi.Root, storageApi.Root)

GetLastSynced returns the height, IORoot hash and StateRoot hash of the last block that was fully synced to.

func (*Node) GetLocalStorage added in v0.2102.0

func (n *Node) GetLocalStorage() storageApi.LocalBackend

GetLocalStorage returns the local storage backend used by this storage node.

func (*Node) GetStatus added in v0.2010.0

func (n *Node) GetStatus(context.Context) (*api.Status, error)

GetStatus returns the storage committee node status.

func (*Node) HandleNewBlockEarlyLocked

func (n *Node) HandleNewBlockEarlyLocked(*runtime.BlockInfo)

HandleNewBlockEarlyLocked is guarded by CrossNode.

func (*Node) HandleNewBlockLocked

func (n *Node) HandleNewBlockLocked(bi *runtime.BlockInfo)

HandleNewBlockLocked is guarded by CrossNode.

func (*Node) HandleRuntimeHostEventLocked added in v0.2202.0

func (n *Node) HandleRuntimeHostEventLocked(*host.Event)

HandleRuntimeHostEventLocked is guarded by CrossNode.

func (*Node) Initialized

func (n *Node) Initialized() <-chan struct{}

Initialized returns a channel that will be closed once the worker finished starting up.

func (*Node) Name

func (n *Node) Name() string

Name returns the service name.

func (*Node) PauseCheckpointer added in v0.2102.0

func (n *Node) PauseCheckpointer(pause bool) error

func (*Node) Quit

func (n *Node) Quit() <-chan struct{}

Quit returns a channel that will be closed when the worker stops.

func (*Node) Start

func (n *Node) Start() error

Start causes the worker to start responding to CometBFT new block events.

func (*Node) Stop

func (n *Node) Stop()

Stop causes the worker to stop watching and shut down.

Jump to

Keyboard shortcuts

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