pub trait BackfillSource: Send + Sync {
// Required method
fn backfill_range<'life0, 'async_trait>(
&'life0 self,
start_height_inclusive: u64,
end_height_inclusive: u64,
sender: Sender<(Updates, DatasourceId)>,
cancellation_token: CancellationToken,
metrics: Arc<MetricsCollection>,
) -> Pin<Box<dyn Future<Output = IndexerResult<()>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
Produces historical updates in height ranges for backfilling.
Implementations should chunk internally as needed and respect
cancellation_token promptly. All emitted updates must have heights within
the requested inclusive range.
Required Methods§
Sourcefn backfill_range<'life0, 'async_trait>(
&'life0 self,
start_height_inclusive: u64,
end_height_inclusive: u64,
sender: Sender<(Updates, DatasourceId)>,
cancellation_token: CancellationToken,
metrics: Arc<MetricsCollection>,
) -> Pin<Box<dyn Future<Output = IndexerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn backfill_range<'life0, 'async_trait>(
&'life0 self,
start_height_inclusive: u64,
end_height_inclusive: u64,
sender: Sender<(Updates, DatasourceId)>,
cancellation_token: CancellationToken,
metrics: Arc<MetricsCollection>,
) -> Pin<Box<dyn Future<Output = IndexerResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Backfill updates from start_height_inclusive to end_height_inclusive.