Documentation ¶
Index ¶
- type EventsIndex
- func (e *EventsIndex) ByBlockID(blockID flow.Identifier, height uint64) ([]flow.Event, error)
- func (e *EventsIndex) ByBlockIDTransactionID(blockID flow.Identifier, height uint64, transactionID flow.Identifier) ([]flow.Event, error)
- func (e *EventsIndex) ByBlockIDTransactionIndex(blockID flow.Identifier, height uint64, txIndex uint32) ([]flow.Event, error)
- func (e *EventsIndex) HighestIndexedHeight() (uint64, error)
- func (e *EventsIndex) Initialize(indexReporter state_synchronization.IndexReporter) error
- func (e *EventsIndex) LowestIndexedHeight() (uint64, error)
- type TransactionResultsIndex
- func (t *TransactionResultsIndex) ByBlockID(blockID flow.Identifier, height uint64) ([]flow.LightTransactionResult, error)
- func (t *TransactionResultsIndex) ByBlockIDTransactionID(blockID flow.Identifier, height uint64, txID flow.Identifier) (*flow.LightTransactionResult, error)
- func (t *TransactionResultsIndex) ByBlockIDTransactionIndex(blockID flow.Identifier, height uint64, index uint32) (*flow.LightTransactionResult, error)
- func (t *TransactionResultsIndex) HighestIndexedHeight() (uint64, error)
- func (t *TransactionResultsIndex) Initialize(indexReporter state_synchronization.IndexReporter) error
- func (t *TransactionResultsIndex) LowestIndexedHeight() (uint64, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventsIndex ¶
type EventsIndex struct {
// contains filtered or unexported fields
}
EventsIndex implements a wrapper around `storage.Events` ensuring that needed data has been synced and is available to the client. Note: `EventsIndex` is created with empty report due to the next reasoning: When the index is initially bootstrapped, the indexer needs to load an execution state checkpoint from disk and index all the data. This process can take more than 1 hour on some systems. Consequently, the Initialize pattern is implemented to enable the Access API to start up and serve queries before the index is fully ready. During the initialization phase, all calls to retrieve data from this struct should return indexer.ErrIndexNotInitialized. The caller is responsible for handling this error appropriately for the method.
func NewEventsIndex ¶
func NewEventsIndex(events storage.Events) *EventsIndex
func (*EventsIndex) ByBlockID ¶
func (e *EventsIndex) ByBlockID(blockID flow.Identifier, height uint64) ([]flow.Event, error)
ByBlockID checks data availability and returns events for a block Expected errors:
- indexer.ErrIndexNotInitialized if the `EventsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound if result cannot be provided by storage due to the absence of data.
func (*EventsIndex) ByBlockIDTransactionID ¶
func (e *EventsIndex) ByBlockIDTransactionID(blockID flow.Identifier, height uint64, transactionID flow.Identifier) ([]flow.Event, error)
ByBlockIDTransactionID checks data availability and return events for the given block ID and transaction ID Expected errors:
- indexer.ErrIndexNotInitialized if the `EventsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound if result cannot be provided by storage due to the absence of data.
func (*EventsIndex) ByBlockIDTransactionIndex ¶
func (e *EventsIndex) ByBlockIDTransactionIndex(blockID flow.Identifier, height uint64, txIndex uint32) ([]flow.Event, error)
ByBlockIDTransactionIndex checks data availability and return events for the transaction at given index in a given block Expected errors:
- indexer.ErrIndexNotInitialized if the `EventsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound if result cannot be provided by storage due to the absence of data.
func (*EventsIndex) HighestIndexedHeight ¶ added in v0.35.4
func (e *EventsIndex) HighestIndexedHeight() (uint64, error)
HighestIndexedHeight returns the highest height indexed by the execution state indexer. Expected errors: - indexer.ErrIndexNotInitialized if the EventsIndex has not been initialized
func (*EventsIndex) Initialize ¶ added in v0.35.4
func (e *EventsIndex) Initialize(indexReporter state_synchronization.IndexReporter) error
Initialize replaces a previously non-initialized reporter. Can be called once. No errors are expected during normal operations.
func (*EventsIndex) LowestIndexedHeight ¶ added in v0.35.4
func (e *EventsIndex) LowestIndexedHeight() (uint64, error)
LowestIndexedHeight returns the lowest height indexed by the execution state indexer. Expected errors: - indexer.ErrIndexNotInitialized if the EventsIndex has not been initialized
type TransactionResultsIndex ¶
type TransactionResultsIndex struct {
// contains filtered or unexported fields
}
TransactionResultsIndex implements a wrapper around `storage.LightTransactionResult` ensuring that needed data has been synced and is available to the client. Note: `TransactionResultsIndex` is created with empty report due to the next reasoning: When the index is initially bootstrapped, the indexer needs to load an execution state checkpoint from disk and index all the data. This process can take more than 1 hour on some systems. Consequently, the Initialize pattern is implemented to enable the Access API to start up and serve queries before the index is fully ready. During the initialization phase, all calls to retrieve data from this struct should return indexer.ErrIndexNotInitialized. The caller is responsible for handling this error appropriately for the method.
func NewTransactionResultsIndex ¶
func NewTransactionResultsIndex(results storage.LightTransactionResults) *TransactionResultsIndex
func (*TransactionResultsIndex) ByBlockID ¶
func (t *TransactionResultsIndex) ByBlockID(blockID flow.Identifier, height uint64) ([]flow.LightTransactionResult, error)
ByBlockID checks data availability and returns all transaction results for a block Expected errors:
- indexer.ErrIndexNotInitialized if the `TransactionResultsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound if result cannot be provided by storage due to the absence of data.
func (*TransactionResultsIndex) ByBlockIDTransactionID ¶
func (t *TransactionResultsIndex) ByBlockIDTransactionID(blockID flow.Identifier, height uint64, txID flow.Identifier) (*flow.LightTransactionResult, error)
ByBlockIDTransactionID checks data availability and return the transaction result for the given block ID and transaction ID Expected errors:
- indexer.ErrIndexNotInitialized if the `TransactionResultsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound if result cannot be provided by storage due to the absence of data.
func (*TransactionResultsIndex) ByBlockIDTransactionIndex ¶
func (t *TransactionResultsIndex) ByBlockIDTransactionIndex(blockID flow.Identifier, height uint64, index uint32) (*flow.LightTransactionResult, error)
ByBlockIDTransactionIndex checks data availability and return the transaction result for the given blockID and transaction index Expected errors:
- indexer.ErrIndexNotInitialized if the `TransactionResultsIndex` has not been initialized
- storage.ErrHeightNotIndexed when data is unavailable
- codes.NotFound when result cannot be provided by storage due to the absence of data.
func (*TransactionResultsIndex) HighestIndexedHeight ¶ added in v0.35.4
func (t *TransactionResultsIndex) HighestIndexedHeight() (uint64, error)
HighestIndexedHeight returns the highest height indexed by the execution state indexer. Expected errors: - indexer.ErrIndexNotInitialized if the `TransactionResultsIndex` has not been initialized
func (*TransactionResultsIndex) Initialize ¶ added in v0.35.4
func (t *TransactionResultsIndex) Initialize(indexReporter state_synchronization.IndexReporter) error
Initialize replaces a previously non-initialized reporter. Can be called once. No errors are expected during normal operations.
func (*TransactionResultsIndex) LowestIndexedHeight ¶ added in v0.35.4
func (t *TransactionResultsIndex) LowestIndexedHeight() (uint64, error)
LowestIndexedHeight returns the lowest height indexed by the execution state indexer. Expected errors: - indexer.ErrIndexNotInitialized if the `TransactionResultsIndex` has not been initialized