Documentation ¶
Index ¶
- type BlockDatabase
- func (database *BlockDatabase) NewCachingSnapshotReadTransaction(parameters state.StateParameters) (Transaction, error)
- func (database *BlockDatabase) NewSnapshotReadTransaction(parameters state.StateParameters) Transaction
- func (database *BlockDatabase) NewTransaction(executionTime logical.Time, parameters state.StateParameters) (Transaction, error)
- type Transaction
- type TransactionPreparer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockDatabase ¶ added in v0.31.0
type BlockDatabase struct { *primary.BlockData *derived.DerivedBlockData }
BlockDatabase packages the primary index (BlockData) and secondary indices (DerivedBlockData) into a single database via 2PC.
func NewBlockDatabase ¶ added in v0.31.0
func NewBlockDatabase( storageSnapshot snapshot.StorageSnapshot, snapshotTime logical.Time, cachedDerivedBlockData *derived.DerivedBlockData, ) *BlockDatabase
NOTE: storageSnapshot must be thread safe.
func (*BlockDatabase) NewCachingSnapshotReadTransaction ¶ added in v0.33.19
func (database *BlockDatabase) NewCachingSnapshotReadTransaction( parameters state.StateParameters, ) (Transaction, error)
NewCachingSnapshotReadTransaction creates a new readonly transaction that allows writing to the derived transaction data table.
func (*BlockDatabase) NewSnapshotReadTransaction ¶ added in v0.31.0
func (database *BlockDatabase) NewSnapshotReadTransaction( parameters state.StateParameters, ) Transaction
NewSnapshotReadTransaction creates a new readonly transaction.
func (*BlockDatabase) NewTransaction ¶ added in v0.31.0
func (database *BlockDatabase) NewTransaction( executionTime logical.Time, parameters state.StateParameters, ) ( Transaction, error, )
type Transaction ¶
type Transaction interface { TransactionPreparer // SnapshotTime returns the transaction's current snapshot time. SnapshotTime() logical.Time // Finalize convert transaction preparer's intermediate state into // committable state. Finalize() error // Validate returns nil if the transaction does not conflict with // previously committed transactions. It returns an error otherwise. Validate() error // Commit commits the transaction. If the transaction conflict with // previously committed transactions, an error is returned and the // transaction is not committed. Commit() (*snapshot.ExecutionSnapshot, error) }
type TransactionPreparer ¶ added in v0.31.0
type TransactionPreparer interface { state.NestedTransactionPreparer derived.DerivedTransactionPreparer }
Click to show internal directories.
Click to hide internal directories.