push

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2022 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SetInitBatchSize added in v0.1.1

func SetInitBatchSize(batchSize int)

Types

type Engine

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

func NewPushEngine

func NewPushEngine(cluster cluster.Cluster, sharder *sharder.Sharder, meta *meta.Controller, cfg *conf.Config,
	queryExec common.SimpleQueryExec, registry protolib.Resolver, failInject failinject.Injector) *Engine

func (*Engine) CreateIndex

func (p *Engine) CreateIndex(indexInfo *common.IndexInfo, fill bool) error

func (*Engine) CreateShardListener

func (p *Engine) CreateShardListener(shardID uint64) cluster.ShardListener

func (*Engine) CreateSource

func (p *Engine) CreateSource(sourceInfo *common.SourceInfo, initTable *common.TableInfo) (*source.Source, error)

func (*Engine) ExistRowsInLocalTable

func (p *Engine) ExistRowsInLocalTable(tableID uint64, localShards []uint64) (bool, error)

func (*Engine) GetLocalLeaderSchedulers

func (p *Engine) GetLocalLeaderSchedulers() (map[uint64]*sched.ShardScheduler, error)

func (*Engine) GetMaterializedView

func (p *Engine) GetMaterializedView(mvID uint64) (*MaterializedView, error)

func (*Engine) GetScheduler

func (p *Engine) GetScheduler(shardID uint64) (*sched.ShardScheduler, bool)

func (*Engine) GetSource

func (p *Engine) GetSource(sourceID uint64) (*source.Source, error)

func (*Engine) HandleReceivedRows

func (p *Engine) HandleReceivedRows(receivingShardID uint64) error

HandleReceivedRows - load batches of rows from the Receiver table and process them

func (*Engine) IsEmpty

func (p *Engine) IsEmpty() bool

func (*Engine) Limit

func (p *Engine) Limit()

func (*Engine) LoadInitialStateForTable added in v0.1.1

func (p *Engine) LoadInitialStateForTable(shardIDs []uint64, initTableID uint64, targetTableID uint64) error

func (*Engine) MaybeHandleRemoteBatch

func (p *Engine) MaybeHandleRemoteBatch(scheduler *sched.ShardScheduler)

func (*Engine) Ready

func (p *Engine) Ready() error

Ready signals that the push engine is now ready to receive any incoming data

func (*Engine) RegisterMV

func (p *Engine) RegisterMV(mv *MaterializedView) error

func (*Engine) RegisterRemoteConsumer

func (p *Engine) RegisterRemoteConsumer(id uint64, rc *RemoteConsumer) error

func (*Engine) RemoveIndex

func (p *Engine) RemoveIndex(indexInfo *common.IndexInfo) error

func (*Engine) RemoveMV

func (p *Engine) RemoveMV(mvID uint64) error

func (*Engine) RemoveSource

func (p *Engine) RemoveSource(sourceInfo *common.SourceInfo) (*source.Source, error)

func (*Engine) Start

func (p *Engine) Start() error

func (*Engine) Stop

func (p *Engine) Stop() error

func (*Engine) UnregisterRemoteConsumer

func (p *Engine) UnregisterRemoteConsumer(id uint64) error

func (*Engine) VerifyNoSourcesOrMVs

func (p *Engine) VerifyNoSourcesOrMVs() error

func (*Engine) WaitForProcessingToComplete

func (p *Engine) WaitForProcessingToComplete() error

WaitForProcessingToComplete is used in tests to wait for all rows have been processed when ingesting test data

func (*Engine) WaitForSchedulers

func (p *Engine) WaitForSchedulers() error

type MaterializedView

type MaterializedView struct {
	Info *common.MaterializedViewInfo

	InternalTables []*common.InternalTableInfo
	// contains filtered or unexported fields
}

func CreateMaterializedView

func CreateMaterializedView(pe *Engine, pl *parplan.Planner, schema *common.Schema, mvName string, query string,
	initTable string, tableID uint64, seqGenerator common.SeqGenerator) (*MaterializedView, error)

CreateMaterializedView creates the materialized view but does not register it in memory

func (*MaterializedView) Connect

func (m *MaterializedView) Connect(addConsuming bool, registerRemote bool) error

Connect connects up any executors which consumer data from sources, materialized views, or remote receivers to their feeders

func (*MaterializedView) Disconnect

func (m *MaterializedView) Disconnect() error

func (*MaterializedView) Drop

func (m *MaterializedView) Drop() error

func (*MaterializedView) Fill

func (m *MaterializedView) Fill() error

func (*MaterializedView) GetConsumingMVs

func (m *MaterializedView) GetConsumingMVs() []string

func (*MaterializedView) TableExecutor

func (m *MaterializedView) TableExecutor() *exec.TableExecutor

type RemoteConsumer

type RemoteConsumer struct {
	RowsFactory *common.RowsFactory
	ColTypes    []common.ColumnType
	RowsHandler remoteRowsHandler
}

RemoteConsumer is a wrapper for something that consumes rows that have arrived remotely from other shards e.g. a source or an aggregator

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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