 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- func CallbackContext(vmCtx fvm.Context, metrics module.ExecutionMetrics) fvm.Context
- func GenerateExecutionReceipt(signer module.Local, receiptHasher hash.Hasher, result *flow.ExecutionResult, ...) (*flow.ExecutionReceipt, error)
- func SystemChunkContext(vmCtx fvm.Context, metrics module.ExecutionMetrics) fvm.Context
- type BlockComputer
- type TransactionRequest
- type TransactionWriteBehindLogger
- type ViewCommitter
Constants ¶
      View Source
      
  
const (
	SystemChunkEventCollectionMaxSize = 256_000_000 // ~256MB
)
    Variables ¶
This section is empty.
Functions ¶
func CallbackContext ¶ added in v0.43.0
CallbackContext is the context for the scheduled callback transactions.
func GenerateExecutionReceipt ¶ added in v0.30.0
func SystemChunkContext ¶ added in v0.21.1
SystemChunkContext is the context for the system chunk transaction.
Types ¶
type BlockComputer ¶
type BlockComputer interface {
	ExecuteBlock(
		ctx context.Context,
		parentBlockExecutionResultID flow.Identifier,
		block *entity.ExecutableBlock,
		snapshot snapshot.StorageSnapshot,
		derivedBlockData *derived.DerivedBlockData,
	) (
		*execution.ComputationResult,
		error,
	)
}
    A BlockComputer executes the transactions in a block.
func NewBlockComputer ¶
func NewBlockComputer( vm fvm.VM, vmCtx fvm.Context, metrics module.ExecutionMetrics, tracer module.Tracer, logger zerolog.Logger, committer ViewCommitter, signer module.Local, executionDataProvider provider.Provider, colResCons []result.ExecutedCollectionConsumer, state protocol.SnapshotExecutionSubsetProvider, maxConcurrency int, ) (BlockComputer, error)
NewBlockComputer creates a new block executor.
type TransactionRequest ¶ added in v0.32.0
type TransactionRequest struct {
	*fvm.TransactionProcedure
	// contains filtered or unexported fields
}
    type TransactionWriteBehindLogger ¶ added in v0.32.0
type TransactionWriteBehindLogger interface {
	AddTransactionResult(
		txn TransactionRequest,
		snapshot *snapshot.ExecutionSnapshot,
		output fvm.ProcedureOutput,
		timeSpent time.Duration,
		numTxnConflictRetries int,
	)
}
    type ViewCommitter ¶ added in v0.16.0
type ViewCommitter interface {
	// CommitView commits an execution snapshot and collects proofs
	CommitView(
		*snapshot.ExecutionSnapshot,
		execution.ExtendableStorageSnapshot,
	) (
		flow.StateCommitment,
		[]byte,
		*ledger.TrieUpdate,
		execution.ExtendableStorageSnapshot,
		error,
	)
}
    ViewCommitter commits execution snapshot to the ledger and collects the proofs
 Click to show internal directories. 
   Click to hide internal directories.