Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var PartialsChannelClosed = errors.New("partial chunks done")
var SkipFile = errors.New("skip file")
Functions ¶
This section is empty.
Types ¶
type MultiSquasher ¶ added in v0.0.21
type MultiSquasher struct {
// contains filtered or unexported fields
}
MultiSquasher produces _complete_ stores, by merging backing partial stores.
func NewMultiSquasher ¶ added in v0.0.21
func NewMultiSquasher( ctx context.Context, runtimeConfig config.RuntimeConfig, modulesStorageStateMap storage.ModuleStorageStateMap, storeConfigs store.ConfigMap, upToBlock uint64, onStoreCompletedUntilBlock func(storeName string, blockNum uint64), ) (*MultiSquasher, error)
NewMultiSquasher receives stores, initializes them and fetches them from the existing storage. It prepares itself to receive Squash() requests that should correspond to what is missing for those stores to reach `targetExclusiveEndBlock`. This is managed externally by the Scheduler/Strategy. Eventually, ideally, all components are synchronizes around the actual data: the state of storages present, the requests needed to fill in those stores up to the target block, etc..
func (*MultiSquasher) Launch ¶ added in v0.0.21
func (s *MultiSquasher) Launch(ctx context.Context)
type NoopMapSquasher ¶ added in v0.1.0
type NoopMapSquasher struct {
// contains filtered or unexported fields
}
type ParallelProcessor ¶ added in v0.1.0
type ParallelProcessor struct {
// contains filtered or unexported fields
}
func BuildParallelProcessor ¶ added in v0.1.0
func BuildParallelProcessor( ctx context.Context, reqDetails *reqctx.RequestDetails, runtimeConfig config.RuntimeConfig, outputGraph *outputmodules.Graph, execoutStorage *execout.Configs, respFunc func(resp substreams.ResponseFromAnyTier) error, storeConfigs store.ConfigMap, pendingUndoMessage *pbsubstreamsrpc.Response, ) (*ParallelProcessor, error)
BuildParallelProcessor is only called on tier1
type Scheduler ¶
type Scheduler struct { OnStoreJobTerminated func(ctx context.Context, moduleName string, partialFilesWritten store.FileInfos) error // contains filtered or unexported fields }
func NewScheduler ¶
func NewScheduler(workPlan *work.Plan, respFunc substreams.ResponseFunc, upstreamRequestModules *pbsubstreams.Modules) *Scheduler
func (*Scheduler) OnStoreCompletedUntilBlock ¶ added in v0.0.21
OnStoreCompletedUntilBlock is called to indicate that the given storeName has snapshots at the `storeSaveIntervals` up to `blockNum` here.
This should unlock all jobs that were dependent
type StoreSquasher ¶ added in v0.0.14
func NewStoreSquasher ¶ added in v0.0.14
func (*StoreSquasher) IsEmpty ¶ added in v0.0.14
func (s *StoreSquasher) IsEmpty() bool
func (*StoreSquasher) String ¶ added in v0.0.14
func (s *StoreSquasher) String() string