state

package
v0.7.3 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2023 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrFraudProofGenerated = errors.New("failed to ApplyBlock: halting node due to fraud")

Functions

This section is empty.

Types

type BlockExecutor

type BlockExecutor struct {
	FraudProofOutCh chan *abci.FraudProof
	// contains filtered or unexported fields
}

BlockExecutor creates and applies blocks and maintains state.

func NewBlockExecutor

func NewBlockExecutor(proposerAddress []byte, namespaceID [8]byte, chainID string, mempool mempool.Mempool, proxyApp proxy.AppConnConsensus, fraudProofsEnabled bool, eventBus *tmtypes.EventBus, logger log.Logger) *BlockExecutor

NewBlockExecutor creates new instance of BlockExecutor. Proposer address and namespace ID will be used in all newly created blocks.

func (*BlockExecutor) ApplyBlock

func (e *BlockExecutor) ApplyBlock(ctx context.Context, state types.State, block *types.Block) (types.State, *tmstate.ABCIResponses, error)

ApplyBlock validates and executes the block.

func (*BlockExecutor) Commit

func (e *BlockExecutor) Commit(ctx context.Context, state types.State, block *types.Block, resp *tmstate.ABCIResponses) ([]byte, uint64, error)

Commit commits the block

func (*BlockExecutor) CreateBlock

func (e *BlockExecutor) CreateBlock(height uint64, lastCommit *types.Commit, lastHeaderHash types.Hash, state types.State) *types.Block

CreateBlock reaps transactions from mempool and builds a block.

func (*BlockExecutor) InitChain

func (e *BlockExecutor) InitChain(genesis *tmtypes.GenesisDoc) (*abci.ResponseInitChain, error)

InitChain calls InitChainSync using consensus connection to app.

func (*BlockExecutor) VerifyFraudProof

func (e *BlockExecutor) VerifyFraudProof(fraudProof *abci.FraudProof, expectedValidAppHash []byte) (bool, error)

Directories

Path Synopsis
kv

Jump to

Keyboard shortcuts

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