Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // ByzantineExecutorHonest is the byzantine executor honest scenario. ByzantineExecutorHonest scenario.Scenario = newByzantineImpl( "executor-honest", nil, oasis.ByzantineDefaultIdentitySeed, false, ) // ByzantineExecutorSchedulerHonest is the byzantine executor scheduler honest scenario. ByzantineExecutorSchedulerHonest scenario.Scenario = newByzantineImpl( "executor-honest", nil, oasis.ByzantineSlot3IdentitySeed, true, ) // ByzantineExecutorWrong is the byzantine executor wrong scenario. ByzantineExecutorWrong scenario.Scenario = newByzantineImpl( "executor-wrong", []log.WatcherHandlerFactory{ oasis.LogAssertNoTimeouts(), oasis.LogAssertNoRoundFailures(), oasis.LogAssertExecutionDiscrepancyDetected(), }, oasis.ByzantineDefaultIdentitySeed, false, ) // ByzantineExecutorStraggler is the byzantine executor straggler scenario. ByzantineExecutorStraggler scenario.Scenario = newByzantineImpl( "executor-straggler", []log.WatcherHandlerFactory{ oasis.LogAssertTimeouts(), oasis.LogAssertNoRoundFailures(), oasis.LogAssertExecutionDiscrepancyDetected(), }, oasis.ByzantineDefaultIdentitySeed, false, ) // ByzantineExecutorSchedulerStraggler is the byzantine executor scheduler straggler scenario. ByzantineExecutorSchedulerStraggler scenario.Scenario = newByzantineImpl( "executor-straggler", []log.WatcherHandlerFactory{ oasis.LogAssertRoundFailures(), oasis.LogAssertTimeouts(), oasis.LogAssertExecutionDiscrepancyDetected(), }, oasis.ByzantineSlot3IdentitySeed, true, ) )
var ( // RuntimeParamsDummy is a dummy instance of runtimeImpl used to register global e2e/runtime flags. RuntimeParamsDummy *runtimeImpl = newRuntimeImpl("", "", []string{}) // Runtime is the basic network + client test case with runtime support. Runtime scenario.Scenario = newRuntimeImpl("runtime", "simple-keyvalue-client", nil) // RuntimeEncryption is the basic network + client with encryption test case. RuntimeEncryption scenario.Scenario = newRuntimeImpl("runtime-encryption", "simple-keyvalue-enc-client", nil) // DefaultRuntimeLogWatcherHandlerFactories is a list of default log watcher // handler factories for the basic scenario. DefaultRuntimeLogWatcherHandlerFactories = []log.WatcherHandlerFactory{ oasis.LogAssertNoTimeouts(), oasis.LogAssertNoRoundFailures(), oasis.LogAssertNoExecutionDiscrepancyDetected(), } )
var ( // Sentry is the Sentry node basic scenario. Sentry scenario.Scenario = newSentryImpl("sentry", "simple-keyvalue-client", nil) // SentryEncryption is the Sentry node basic encryption scenario. SentryEncryption scenario.Scenario = newSentryImpl("sentry-encryption", "simple-keyvalue-enc-client", nil) )
var DumpRestore scenario.Scenario = newDumpRestoreImpl()
DumpRestore is the dump and restore scenario.
var GasFeesRuntimes scenario.Scenario = &gasFeesRuntimesImpl{ runtimeImpl: *newRuntimeImpl("gas-fees/runtimes", "", nil), }
GasFeesRuntimes is the runtime gas fees scenario.
var ( // HaltRestore is the halt and restore scenario. HaltRestore scenario.Scenario = newHaltRestoreImpl() )
var HistoryReindex scenario.Scenario = newHistoryReindexImpl()
HistoryReindex is the scenario that triggers roothash history reindexing.
var KeymanagerReplicate scenario.Scenario = newKmReplicateImpl()
KeymanagerReplicate is the keymanager replication scenario.
var KeymanagerRestart scenario.Scenario = newKmRestartImpl()
KeymanagerRestart is the keymanager restart scenario.
var KeymanagerUpgrade scenario.Scenario = newKmUpgradeImpl()
KeymanagerUpgrade is the keymanager upgrade scenario.
var LateStart scenario.Scenario = newLateStartImpl("late-start", "simple-keyvalue-client", nil)
LateStart is the LateStart node basic scenario.
var MultipleRuntimes = func() scenario.Scenario { sc := &multipleRuntimesImpl{ runtimeImpl: *newRuntimeImpl("multiple-runtimes", "simple-keyvalue-client", nil), } sc.Flags.Int(cfgNumComputeRuntimes, 2, "number of compute runtimes per worker") sc.Flags.Int(cfgNumComputeRuntimeTxns, 2, "number of transactions to perform") sc.Flags.Int(cfgNumComputeWorkers, 2, "number of workers to initiate") sc.Flags.Int(cfgExecutorGroupSize, 2, "number of executor workers in committee") return sc }()
MultipleRuntimes is a scenario which tests running multiple runtimes on one node.
var NodeShutdown scenario.Scenario = newNodeShutdownImpl()
NodeShutdown is the keymanager restart scenario.
var RuntimeDynamic scenario.Scenario = newRuntimeDynamicImpl()
RuntimeDynamic is the dynamic runtime registration scenario.
var RuntimePrune scenario.Scenario = newRuntimePruneImpl()
RuntimePrune is the runtime prune scenario.
var RuntimeUpgrade scenario.Scenario = newRuntimeUpgradeImpl()
RuntimeUpgrade is the runtime upgrade scenario.
var StorageSync scenario.Scenario = newStorageSyncImpl()
StorageSync is the storage sync scenario.
var TxSourceMulti scenario.Scenario = &txSourceImpl{ runtimeImpl: *newRuntimeImpl("txsource-multi", "", nil), clientWorkloads: []string{ workload.NameCommission, workload.NameDelegation, workload.NameOversized, workload.NameParallel, workload.NameRegistration, workload.NameRuntime, workload.NameTransfer, }, allNodeWorkloads: []string{ workload.NameQueries, }, timeLimit: timeLimitLong, nodeRestartInterval: nodeRestartIntervalLong, nodeLongRestartInterval: nodeLongRestartInterval, nodeLongRestartDuration: nodeLongRestartDuration, livenessCheckInterval: livenessCheckInterval, consensusPruneDisabledProbability: 0.1, consensusPruneMinKept: 100, consensusPruneMaxKept: 1000, tendermintRecoverCorruptedWAL: true, numStorageNodes: 3, }
TxSourceMulti uses multiple workloads.
var TxSourceMultiShort scenario.Scenario = &txSourceImpl{ runtimeImpl: *newRuntimeImpl("txsource-multi-short", "", nil), clientWorkloads: []string{ workload.NameCommission, workload.NameDelegation, workload.NameOversized, workload.NameParallel, workload.NameRegistration, workload.NameRuntime, workload.NameTransfer, }, allNodeWorkloads: []string{ workload.NameQueries, }, timeLimit: timeLimitShort, livenessCheckInterval: livenessCheckInterval, consensusPruneDisabledProbability: 0.1, consensusPruneMinKept: 100, consensusPruneMaxKept: 200, numStorageNodes: 2, }
TxSourceMultiShort uses multiple workloads for a short time.
Functions ¶
func RegisterScenarios ¶
func RegisterScenarios() error
RegisterScenarios registers all end-to-end scenarios.
Types ¶
This section is empty.