storage

package
v0.2201.9 Latest Latest
Warning

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

Go to latest
Published: Jul 26, 2022 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Overview

Package storage implements the storage backend.

Index

Constants

View Source
const (

	// CfgWorkerPublicRPCEnabled enables storage state access for all nodes instead of just
	// storage committee members.
	CfgWorkerPublicRPCEnabled = "worker.storage.public_rpc.enabled"

	// CfgWorkerCheckpointerEnabled enables the storage checkpointer.
	CfgWorkerCheckpointerEnabled = "worker.storage.checkpointer.enabled"
	// CfgWorkerCheckpointCheckInterval configures the checkpointer check interval.
	CfgWorkerCheckpointCheckInterval = "worker.storage.checkpointer.check_interval"

	// CfgCheckpointSyncDisabled disables syncing from checkpoints on worker startup.
	CfgWorkerCheckpointSyncDisabled = "worker.storage.checkpoint_sync.disabled"

	// CfgBackend configures the storage backend flag.
	CfgBackend = "worker.storage.backend"

	// CfgMaxCacheSize configures the maximum in-memory cache size.
	CfgMaxCacheSize = "worker.storage.max_cache_size"
)

Variables

Flags has the configuration flags.

Functions

func GetLocalBackendDBDir added in v0.2100.0

func GetLocalBackendDBDir(dataDir, backend string) string

GetLocalBackendDBDir returns the database name for local backends.

func NewLocalBackend added in v0.2012.3

func NewLocalBackend(
	dataDir string,
	namespace common.Namespace,
	identity *identity.Identity,
) (api.LocalBackend, error)

NewLocalBackend constructs a new Backend based on the configuration flags.

Types

type Worker

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

Worker is a worker handling storage operations.

func New

func New(
	grpcInternal *grpc.Server,
	commonWorker *workerCommon.Worker,
	registration *registration.Worker,
	genesis genesis.Provider,
) (*Worker, error)

New constructs a new storage worker.

func (*Worker) Cleanup

func (w *Worker) Cleanup()

Cleanup performs the service specific post-termination cleanup.

func (*Worker) Enabled

func (w *Worker) Enabled() bool

Enabled returns if worker is enabled.

func (*Worker) GetLastSyncedRound

func (w *Worker) GetLastSyncedRound(ctx context.Context, request *api.GetLastSyncedRoundRequest) (*api.GetLastSyncedRoundResponse, error)

func (*Worker) GetRuntime added in v0.2010.0

func (w *Worker) GetRuntime(id common.Namespace) *committee.Node

GetRuntime returns a storage committee node for the given runtime (if available).

In case the runtime with the specified id was not configured for this node it returns nil.

func (*Worker) Initialized

func (w *Worker) Initialized() <-chan struct{}

Initialized returns a channel that will be closed when the storage worker is initialized and ready to service requests.

func (*Worker) Name

func (w *Worker) Name() string

Name returns the service name.

func (*Worker) PauseCheckpointer added in v0.2102.0

func (w *Worker) PauseCheckpointer(ctx context.Context, request *api.PauseCheckpointerRequest) error

func (*Worker) Quit

func (w *Worker) Quit() <-chan struct{}

Quit returns a channel that will be closed when the service terminates.

func (*Worker) Start

func (w *Worker) Start() error

Start starts the storage service.

func (*Worker) Stop

func (w *Worker) Stop()

Stop halts the service.

func (*Worker) WaitForRound added in v0.2102.0

func (w *Worker) WaitForRound(ctx context.Context, request *api.WaitForRoundRequest) (*api.WaitForRoundResponse, error)

Directories

Path Synopsis
p2p
pub
Package tests is a collection of storage worker test cases.
Package tests is a collection of storage worker test cases.

Jump to

Keyboard shortcuts

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