Expand description
Transaction scheduling code.
This crate implements 3 solana-runtime traits InstalledScheduler, UninstalledScheduler
and InstalledSchedulerPool to provide a concrete transaction scheduling implementation
(including executing txes and committing tx results).
At the highest level, this crate takes SanitizedTransactions via its
InstalledScheduler::schedule_execution and commits any side-effects (i.e. on-chain state
changes) into the associated Bank via solana-ledger’s helper
function called execute_batch.
Refer to PooledScheduler doc comment for general overview of scheduler state transitions
regarding to pooling and the actual use.
Structs§
- Banking
Stage Helper - Default
Task Handler - Handler
Context - Pooled
Scheduler - The concrete scheduler instance along with 1 scheduler and N handler threads.
- Pooled
Scheduler Inner - Scheduler
Pool - A pool of idling schedulers (usually
PooledScheduler), ready to be taken by bank. - Usage
Queue Loader - The primary owner of all
UsageQueues used for particularPooledScheduler.