Interface BlockSimulationService

All Superinterfaces:
BesuService

public interface BlockSimulationService extends BesuService
This class is a service that simulates the processing of a block
  • Method Summary

    Modifier and Type
    Method
    Description
    simulate(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides)
    Simulate the processing of a block given a header, a list of transactions, and blockOverrides.
    simulate(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides, org.hyperledger.besu.evm.tracing.OperationTracer tracer)
    Simulate the processing of a block given a header, a list of transactions, blockOverrides, and a tracer.
    simulateAndPersistWorldState(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides)
    This method is experimental and should be used with caution.
  • Method Details

    • simulate

      PluginBlockSimulationResult simulate(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides)
      Simulate the processing of a block given a header, a list of transactions, and blockOverrides.
      Parameters:
      blockNumber - the block number
      transactions - the transactions to include in the block
      blockOverrides - the blockSimulationOverride of the block
      stateOverrides - state overrides of the block
      Returns:
      the block context
    • simulate

      PluginBlockSimulationResult simulate(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides, org.hyperledger.besu.evm.tracing.OperationTracer tracer)
      Simulate the processing of a block given a header, a list of transactions, blockOverrides, and a tracer.
      Parameters:
      blockNumber - the block number
      transactions - the transactions to include in the block
      blockOverrides - the blockSimulationOverride of the block
      stateOverrides - state overrides of the block
      tracer - the operation tracer to use during simulation
      Returns:
      the block context
    • simulateAndPersistWorldState

      PluginBlockSimulationResult simulateAndPersistWorldState(long blockNumber, List<? extends org.hyperledger.besu.datatypes.Transaction> transactions, BlockOverrides blockOverrides, org.hyperledger.besu.datatypes.StateOverrideMap stateOverrides)
      This method is experimental and should be used with caution. Simulate the processing of a block given a header, a list of transactions, and blockOverrides and persist the WorldState
      Parameters:
      blockNumber - the block number
      transactions - the transactions to include in the block
      blockOverrides - block overrides for the block
      stateOverrides - state overrides of the block
      Returns:
      the PluginBlockSimulationResult