pipeline

package
v0.0.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 29, 2022 License: Apache-2.0 Imports: 22 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseExecutor

type BaseExecutor struct {
	// contains filtered or unexported fields
}

type MapperModuleExecutor

type MapperModuleExecutor struct {
	BaseExecutor
	// contains filtered or unexported fields
}

func (*MapperModuleExecutor) Name

func (e *MapperModuleExecutor) Name() string

Name implements ModuleExecutor

func (*MapperModuleExecutor) Reset

func (e *MapperModuleExecutor) Reset()

func (*MapperModuleExecutor) String

func (e *MapperModuleExecutor) String() string

type ModuleExecutor

type ModuleExecutor interface {
	// Name returns the name of the module as defined in the manifest.
	Name() string

	// String returns the module executor representation, usually its name directly.
	String() string

	// Reset the wasm instance, avoid propagating logs.
	Reset()
	// contains filtered or unexported methods
}

func OptimizeExecutors

func OptimizeExecutors(moduleOutputCache map[string]*outputs.OutputCache, moduleExecutors []ModuleExecutor, requestedOutputStores []string) (optimizedModuleExecutors []ModuleExecutor, skipBlockSource bool)

type Option

type Option func(p *Pipeline)

func WithPostBlockHook

func WithPostBlockHook(f substreams.BlockHook) Option

func WithPostJobHook

func WithPostJobHook(f substreams.PostJobHook) Option

func WithPreBlockHook

func WithPreBlockHook(f substreams.BlockHook) Option

func WithStoresSaveInterval

func WithStoresSaveInterval(seconds uint64) Option

func WithSubrequestExecution added in v0.0.14

func WithSubrequestExecution() Option

TODO(abourget): OrchestratedExecution -> Subrequest isOrchestrated -> isSubrequest

func WithSyncBlockRangeRestriction

func WithSyncBlockRangeRestriction(maxRangeSize uint64) Option

type Pipeline

type Pipeline struct {
	// contains filtered or unexported fields
}

func New

func New(
	ctx context.Context,
	request *pbsubstreams.Request,
	graph *manifest.ModuleGraph,
	blockType string,
	baseStateStore dstore.Store,
	outputCacheSaveBlockInterval uint64,
	wasmExtensions []wasm.WASMExtensioner,
	grpcClientFactory substreams.GrpcClientFactory,
	subrequestSplitSize int,
	respFunc func(resp *pbsubstreams.Response) error,
	opts ...Option) *Pipeline

func (*Pipeline) Init added in v0.0.14

func (p *Pipeline) Init(workerPool *orchestrator.WorkerPool) (err error)

func (*Pipeline) PartialsWritten added in v0.0.14

func (p *Pipeline) PartialsWritten() block.Ranges

func (*Pipeline) ProcessBlock added in v0.0.14

func (p *Pipeline) ProcessBlock(block *bstream.Block, obj interface{}) (err error)

type PipelineOptioner

type PipelineOptioner interface {
	PipelineOptions(ctx context.Context, request *pbsubstreams.Request) []Option
}

type StoreModuleExecutor

type StoreModuleExecutor struct {
	BaseExecutor
	// contains filtered or unexported fields
}

func (*StoreModuleExecutor) Name

func (e *StoreModuleExecutor) Name() string

Name implements ModuleExecutor

func (*StoreModuleExecutor) Reset

func (e *StoreModuleExecutor) Reset()

func (*StoreModuleExecutor) String

func (e *StoreModuleExecutor) String() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL