[][src]Module transact::scheduler

Batch scheduling with transaction execution APIs

A Scheduler is used to execute one or more Batch objects, receiving a BatchExecutionResult as a result of the execution of a Batch. A Batch contains one or more Transaction objects; each Transaction within a Batch is executed and then consolidated to generate a BatchExecutionResult.

In order for a Scheduler to execute batches, its associated SchedulerExecutionInterface must be consumed by a component responsible for iterating over the Transactions and providing ExecutionTaskCompletionNotifications back to the Scheduler via the SchedulerExecutionInterface.

Modules

multi

A Scheduler which runs multiple sub-schedulers. The primary purpose of the MultiScheduler is for testing; it enables running multiple schedulers in parallel to verify that they all produce the same results for a given workload.

parallel
serial

A Scheduler which schedules transaction for execution one at time.

Structs

BatchExecutionResult

Result of executing a batch.

ExecutionTask

A transation and associated information required to execute it.

InvalidTransactionResult

Enums

ExecutionTaskCompletionNotification
SchedulerError

Traits

ExecutionTaskCompletionNotifier

Allows sending a notification to the scheduler that execution of a task has completed.

Scheduler

Schedules batches and transactions and returns execution results.