sync

package
v1.0.0-alpha.3 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2020 License: GPL-3.0 Imports: 60 Imported by: 0

Documentation

Overview

Package sync TODO(3147): Add details on how sync works.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ReadChunkedBlock

func ReadChunkedBlock(stream libp2pcore.Stream, p2p p2p.P2P) (*eth.SignedBeaconBlock, error)

ReadChunkedBlock handles each response chunk that is sent by the peer and converts it into a beacon block.

func ReadStatusCode

func ReadStatusCode(stream io.Reader, encoding encoder.NetworkEncoding) (uint8, string, error)

ReadStatusCode response from a RPC stream.

func WriteChunk

func WriteChunk(stream libp2pcore.Stream, encoding encoder.NetworkEncoding, msg interface{}) error

WriteChunk object to stream. response_chunk ::= | <result> | <encoding-dependent-header> | <encoded-payload>

Types

type Checker

type Checker interface {
	Syncing() bool
	Status() error
	Resync() error
}

Checker defines a struct which can verify whether a node is currently synchronizing a chain with the rest of peers in the network.

type Config

type Config struct {
	P2P                 p2p.P2P
	DB                  db.NoHeadAccessDatabase
	AttPool             attestations.Pool
	ExitPool            *voluntaryexits.Pool
	SlashingPool        *slashings.Pool
	Chain               blockchainService
	InitialSync         Checker
	StateNotifier       statefeed.Notifier
	BlockNotifier       blockfeed.Notifier
	AttestationNotifier operation.Notifier
	StateSummaryCache   *cache.StateSummaryCache
	StateGen            *stategen.State
}

Config to set up the regular sync service.

type Service added in v0.3.0

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

Service is responsible for handling all run time p2p related operations as the main entry point for network messages.

func NewRegularSync

func NewRegularSync(cfg *Config) *Service

NewRegularSync service.

func (*Service) Start added in v0.3.0

func (r *Service) Start()

Start the regular sync service.

func (*Service) Status added in v0.3.0

func (r *Service) Status() error

Status of the currently running regular sync service.

func (*Service) Stop added in v0.3.0

func (r *Service) Stop() error

Stop the regular sync service.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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