Documentation
¶
Index ¶
- func ConnectPushExecutors(childExecutors []PushExecutor, parent PushExecutor)
- type AggregateFunctionInfo
- type Aggregator
- func (p *Aggregator) AddChild(child PushExecutor)
- func (p *Aggregator) ClearChildren()
- func (p *Aggregator) ColNames() []string
- func (p *Aggregator) ColTypes() []common.ColumnType
- func (p *Aggregator) ColsVisible() []bool
- func (p *Aggregator) GetChildren() []PushExecutor
- func (p *Aggregator) GetParent() PushExecutor
- func (a *Aggregator) HandleRemoteRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (a *Aggregator) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *Aggregator) KeyCols() []int
- func (a *Aggregator) ReCalcSchemaFromChildren() error
- func (p *Aggregator) SetColNames(colNames []string)
- func (p *Aggregator) SetParent(parent PushExecutor)
- type ExecutionContext
- type IndexExecutor
- func (p *IndexExecutor) AddChild(child PushExecutor)
- func (p *IndexExecutor) ClearChildren()
- func (p *IndexExecutor) ColNames() []string
- func (p *IndexExecutor) ColTypes() []common.ColumnType
- func (p *IndexExecutor) ColsVisible() []bool
- func (p *IndexExecutor) GetChildren() []PushExecutor
- func (p *IndexExecutor) GetParent() PushExecutor
- func (t *IndexExecutor) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *IndexExecutor) KeyCols() []int
- func (t *IndexExecutor) ReCalcSchemaFromChildren() error
- func (p *IndexExecutor) SetColNames(colNames []string)
- func (p *IndexExecutor) SetParent(parent PushExecutor)
- type PushExecutor
- type PushProjection
- func (p *PushProjection) AddChild(child PushExecutor)
- func (p *PushProjection) ClearChildren()
- func (p *PushProjection) ColNames() []string
- func (p *PushProjection) ColTypes() []common.ColumnType
- func (p *PushProjection) ColsVisible() []bool
- func (p *PushProjection) GetChildren() []PushExecutor
- func (p *PushProjection) GetParent() PushExecutor
- func (p *PushProjection) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *PushProjection) KeyCols() []int
- func (p *PushProjection) ReCalcSchemaFromChildren() error
- func (p *PushProjection) SetColNames(colNames []string)
- func (p *PushProjection) SetParent(parent PushExecutor)
- type PushSelect
- func (p *PushSelect) AddChild(child PushExecutor)
- func (p *PushSelect) ClearChildren()
- func (p *PushSelect) ColNames() []string
- func (p *PushSelect) ColTypes() []common.ColumnType
- func (p *PushSelect) ColsVisible() []bool
- func (p *PushSelect) GetChildren() []PushExecutor
- func (p *PushSelect) GetParent() PushExecutor
- func (p *PushSelect) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *PushSelect) KeyCols() []int
- func (p *PushSelect) ReCalcSchemaFromChildren() error
- func (p *PushSelect) SetColNames(colNames []string)
- func (p *PushSelect) SetParent(parent PushExecutor)
- type RowWithIndexForwarder
- func (p *RowWithIndexForwarder) AddChild(child PushExecutor)
- func (p *RowWithIndexForwarder) ClearChildren()
- func (p *RowWithIndexForwarder) ColNames() []string
- func (p *RowWithIndexForwarder) ColTypes() []common.ColumnType
- func (p *RowWithIndexForwarder) ColsVisible() []bool
- func (p *RowWithIndexForwarder) GetChildren() []PushExecutor
- func (p *RowWithIndexForwarder) GetParent() PushExecutor
- func (r *RowWithIndexForwarder) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *RowWithIndexForwarder) KeyCols() []int
- func (p *RowWithIndexForwarder) ReCalcSchemaFromChildren() error
- func (p *RowWithIndexForwarder) SetColNames(colNames []string)
- func (p *RowWithIndexForwarder) SetParent(parent PushExecutor)
- type RowsBatch
- type RowsEntry
- type Scan
- func (p *Scan) AddChild(child PushExecutor)
- func (p *Scan) ClearChildren()
- func (p *Scan) ColNames() []string
- func (p *Scan) ColTypes() []common.ColumnType
- func (p *Scan) ColsVisible() []bool
- func (p *Scan) GetChildren() []PushExecutor
- func (p *Scan) GetParent() PushExecutor
- func (t *Scan) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *Scan) KeyCols() []int
- func (t *Scan) ReCalcSchemaFromChildren() error
- func (p *Scan) SetColNames(colNames []string)
- func (p *Scan) SetParent(parent PushExecutor)
- func (t *Scan) SetSchema(tableInfo *common.TableInfo)
- type TableExecutor
- func (p *TableExecutor) AddChild(child PushExecutor)
- func (t *TableExecutor) AddConsumingNode(consumerName string, node PushExecutor)
- func (p *TableExecutor) ClearChildren()
- func (p *TableExecutor) ColNames() []string
- func (p *TableExecutor) ColTypes() []common.ColumnType
- func (p *TableExecutor) ColsVisible() []bool
- func (t *TableExecutor) FillTo(pe PushExecutor, consumerName string, newTableID uint64, ...) error
- func (t *TableExecutor) ForwardToConsumingNodes(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *TableExecutor) GetChildren() []PushExecutor
- func (t *TableExecutor) GetConsumingMvNames() []string
- func (p *TableExecutor) GetParent() PushExecutor
- func (t *TableExecutor) HandleRemoteRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (t *TableExecutor) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *TableExecutor) KeyCols() []int
- func (t *TableExecutor) ReCalcSchemaFromChildren() error
- func (t *TableExecutor) RemoveConsumingNode(consumerName string)
- func (t *TableExecutor) RowsFactory() *common.RowsFactory
- func (p *TableExecutor) SetColNames(colNames []string)
- func (p *TableExecutor) SetParent(parent PushExecutor)
- type UnionAll
- func (p *UnionAll) AddChild(child PushExecutor)
- func (p *UnionAll) ClearChildren()
- func (p *UnionAll) ColNames() []string
- func (p *UnionAll) ColTypes() []common.ColumnType
- func (p *UnionAll) ColsVisible() []bool
- func (p *UnionAll) GetChildren() []PushExecutor
- func (p *UnionAll) GetParent() PushExecutor
- func (u *UnionAll) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (u *UnionAll) HandleRowsWithIndex(index int, rowsBatch RowsBatch, ctx *ExecutionContext) error
- func (p *UnionAll) KeyCols() []int
- func (u *UnionAll) ReCalcSchemaFromChildren() error
- func (p *UnionAll) SetColNames(colNames []string)
- func (p *UnionAll) SetParent(parent PushExecutor)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConnectPushExecutors ¶
func ConnectPushExecutors(childExecutors []PushExecutor, parent PushExecutor)
Types ¶
type AggregateFunctionInfo ¶
type AggregateFunctionInfo struct {
FuncType aggfuncs.AggFunctionType
Distinct bool
ArgExpr *common.Expression
ReturnType common.ColumnType
}
type Aggregator ¶
type Aggregator struct {
PartialAggTableInfo *common.TableInfo
FullAggTableInfo *common.TableInfo
// contains filtered or unexported fields
}
func NewAggregator ¶
func (*Aggregator) AddChild ¶
func (p *Aggregator) AddChild(child PushExecutor)
func (*Aggregator) ClearChildren ¶
func (p *Aggregator) ClearChildren()
func (*Aggregator) ColTypes ¶
func (p *Aggregator) ColTypes() []common.ColumnType
func (*Aggregator) ColsVisible ¶
func (p *Aggregator) ColsVisible() []bool
func (*Aggregator) GetChildren ¶
func (p *Aggregator) GetChildren() []PushExecutor
func (*Aggregator) GetParent ¶
func (p *Aggregator) GetParent() PushExecutor
func (*Aggregator) HandleRemoteRows ¶
func (a *Aggregator) HandleRemoteRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
HandleRemoteRows is called when partial aggregation is forwarded from another shard
func (*Aggregator) HandleRows ¶
func (a *Aggregator) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*Aggregator) ReCalcSchemaFromChildren ¶
func (a *Aggregator) ReCalcSchemaFromChildren() error
func (*Aggregator) SetColNames ¶
func (p *Aggregator) SetColNames(colNames []string)
func (*Aggregator) SetParent ¶
func (p *Aggregator) SetParent(parent PushExecutor)
type ExecutionContext ¶
type ExecutionContext struct {
WriteBatch *cluster.WriteBatch
RemoteBatches map[uint64]*cluster.WriteBatch
BatchSequence uint32
EnableDuplicateDetection bool
}
func NewExecutionContext ¶
func NewExecutionContext(writeBatch *cluster.WriteBatch, enableDuplicateDetection bool) *ExecutionContext
func (*ExecutionContext) AddToForwardBatch ¶
func (e *ExecutionContext) AddToForwardBatch(shardID uint64, key []byte, value []byte)
type IndexExecutor ¶
type IndexExecutor struct {
IndexInfo *common.IndexInfo
TableInfo *common.TableInfo // The table info of the table (source or MV) that we are creating the index on
// contains filtered or unexported fields
}
IndexExecutor maintains a secondary index
func NewIndexExecutor ¶
func (*IndexExecutor) AddChild ¶
func (p *IndexExecutor) AddChild(child PushExecutor)
func (*IndexExecutor) ClearChildren ¶
func (p *IndexExecutor) ClearChildren()
func (*IndexExecutor) ColTypes ¶
func (p *IndexExecutor) ColTypes() []common.ColumnType
func (*IndexExecutor) ColsVisible ¶
func (p *IndexExecutor) ColsVisible() []bool
func (*IndexExecutor) GetChildren ¶
func (p *IndexExecutor) GetChildren() []PushExecutor
func (*IndexExecutor) GetParent ¶
func (p *IndexExecutor) GetParent() PushExecutor
func (*IndexExecutor) HandleRows ¶
func (t *IndexExecutor) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*IndexExecutor) ReCalcSchemaFromChildren ¶
func (t *IndexExecutor) ReCalcSchemaFromChildren() error
func (*IndexExecutor) SetColNames ¶
func (p *IndexExecutor) SetColNames(colNames []string)
func (*IndexExecutor) SetParent ¶
func (p *IndexExecutor) SetParent(parent PushExecutor)
type PushExecutor ¶
type PushExecutor interface {
HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
SetParent(parent PushExecutor)
GetParent() PushExecutor
AddChild(parent PushExecutor)
GetChildren() []PushExecutor
ClearChildren()
ReCalcSchemaFromChildren() error
ColNames() []string
SetColNames(colNames []string)
ColTypes() []common.ColumnType
KeyCols() []int
ColsVisible() []bool
}
type PushProjection ¶
type PushProjection struct {
// contains filtered or unexported fields
}
func NewPushProjection ¶
func NewPushProjection(projColumns []*common.Expression) *PushProjection
func (*PushProjection) AddChild ¶
func (p *PushProjection) AddChild(child PushExecutor)
func (*PushProjection) ClearChildren ¶
func (p *PushProjection) ClearChildren()
func (*PushProjection) ColTypes ¶
func (p *PushProjection) ColTypes() []common.ColumnType
func (*PushProjection) ColsVisible ¶
func (p *PushProjection) ColsVisible() []bool
func (*PushProjection) GetChildren ¶
func (p *PushProjection) GetChildren() []PushExecutor
func (*PushProjection) GetParent ¶
func (p *PushProjection) GetParent() PushExecutor
func (*PushProjection) HandleRows ¶
func (p *PushProjection) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*PushProjection) ReCalcSchemaFromChildren ¶
func (p *PushProjection) ReCalcSchemaFromChildren() error
func (*PushProjection) SetColNames ¶
func (p *PushProjection) SetColNames(colNames []string)
func (*PushProjection) SetParent ¶
func (p *PushProjection) SetParent(parent PushExecutor)
type PushSelect ¶
type PushSelect struct {
// contains filtered or unexported fields
}
func NewPushSelect ¶
func NewPushSelect(predicates []*common.Expression) *PushSelect
func (*PushSelect) AddChild ¶
func (p *PushSelect) AddChild(child PushExecutor)
func (*PushSelect) ClearChildren ¶
func (p *PushSelect) ClearChildren()
func (*PushSelect) ColTypes ¶
func (p *PushSelect) ColTypes() []common.ColumnType
func (*PushSelect) ColsVisible ¶
func (p *PushSelect) ColsVisible() []bool
func (*PushSelect) GetChildren ¶
func (p *PushSelect) GetChildren() []PushExecutor
func (*PushSelect) GetParent ¶
func (p *PushSelect) GetParent() PushExecutor
func (*PushSelect) HandleRows ¶
func (p *PushSelect) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*PushSelect) ReCalcSchemaFromChildren ¶
func (p *PushSelect) ReCalcSchemaFromChildren() error
func (*PushSelect) SetColNames ¶
func (p *PushSelect) SetColNames(colNames []string)
func (*PushSelect) SetParent ¶
func (p *PushSelect) SetParent(parent PushExecutor)
type RowWithIndexForwarder ¶
type RowWithIndexForwarder struct {
// contains filtered or unexported fields
}
func (*RowWithIndexForwarder) AddChild ¶
func (p *RowWithIndexForwarder) AddChild(child PushExecutor)
func (*RowWithIndexForwarder) ClearChildren ¶
func (p *RowWithIndexForwarder) ClearChildren()
func (*RowWithIndexForwarder) ColTypes ¶
func (p *RowWithIndexForwarder) ColTypes() []common.ColumnType
func (*RowWithIndexForwarder) ColsVisible ¶
func (p *RowWithIndexForwarder) ColsVisible() []bool
func (*RowWithIndexForwarder) GetChildren ¶
func (p *RowWithIndexForwarder) GetChildren() []PushExecutor
func (*RowWithIndexForwarder) GetParent ¶
func (p *RowWithIndexForwarder) GetParent() PushExecutor
func (*RowWithIndexForwarder) HandleRows ¶
func (r *RowWithIndexForwarder) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*RowWithIndexForwarder) ReCalcSchemaFromChildren ¶
func (p *RowWithIndexForwarder) ReCalcSchemaFromChildren() error
func (*RowWithIndexForwarder) SetColNames ¶
func (p *RowWithIndexForwarder) SetColNames(colNames []string)
func (*RowWithIndexForwarder) SetParent ¶
func (p *RowWithIndexForwarder) SetParent(parent PushExecutor)
type RowsBatch ¶
type RowsBatch struct {
// contains filtered or unexported fields
}
func NewCurrentRowsBatch ¶
func (*RowsBatch) AppendEntry ¶
type RowsEntry ¶
type RowsEntry struct {
// contains filtered or unexported fields
}
func NewRowsEntry ¶
type Scan ¶
type Scan struct {
TableName string
// contains filtered or unexported fields
}
func (*Scan) AddChild ¶
func (p *Scan) AddChild(child PushExecutor)
func (*Scan) ClearChildren ¶
func (p *Scan) ClearChildren()
func (*Scan) ColTypes ¶
func (p *Scan) ColTypes() []common.ColumnType
func (*Scan) ColsVisible ¶
func (p *Scan) ColsVisible() []bool
func (*Scan) GetChildren ¶
func (p *Scan) GetChildren() []PushExecutor
func (*Scan) GetParent ¶
func (p *Scan) GetParent() PushExecutor
func (*Scan) HandleRows ¶
func (t *Scan) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*Scan) ReCalcSchemaFromChildren ¶
func (*Scan) SetColNames ¶
func (p *Scan) SetColNames(colNames []string)
func (*Scan) SetParent ¶
func (p *Scan) SetParent(parent PushExecutor)
type TableExecutor ¶
TableExecutor updates the changes into the associated table - used to persist state of a materialized view or source
func NewTableExecutor ¶
func NewTableExecutor(tableInfo *common.TableInfo, store cluster.Cluster) *TableExecutor
func (*TableExecutor) AddChild ¶
func (p *TableExecutor) AddChild(child PushExecutor)
func (*TableExecutor) AddConsumingNode ¶
func (t *TableExecutor) AddConsumingNode(consumerName string, node PushExecutor)
func (*TableExecutor) ClearChildren ¶
func (p *TableExecutor) ClearChildren()
func (*TableExecutor) ColTypes ¶
func (p *TableExecutor) ColTypes() []common.ColumnType
func (*TableExecutor) ColsVisible ¶
func (p *TableExecutor) ColsVisible() []bool
func (*TableExecutor) FillTo ¶
func (t *TableExecutor) FillTo(pe PushExecutor, consumerName string, newTableID uint64, schedulers map[uint64]*sched.ShardScheduler, failInject failinject.Injector) error
FillTo - fills the specified PushExecutor with all the rows in the table and also captures any new changes that might arrive while the fill is in progress. Once the fill is complete and the table executor and the push executor are in sync then the operation completes
func (*TableExecutor) ForwardToConsumingNodes ¶
func (t *TableExecutor) ForwardToConsumingNodes(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*TableExecutor) GetChildren ¶
func (p *TableExecutor) GetChildren() []PushExecutor
func (*TableExecutor) GetConsumingMvNames ¶
func (t *TableExecutor) GetConsumingMvNames() []string
func (*TableExecutor) GetParent ¶
func (p *TableExecutor) GetParent() PushExecutor
func (*TableExecutor) HandleRemoteRows ¶
func (t *TableExecutor) HandleRemoteRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*TableExecutor) HandleRows ¶
func (t *TableExecutor) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*TableExecutor) ReCalcSchemaFromChildren ¶
func (t *TableExecutor) ReCalcSchemaFromChildren() error
func (*TableExecutor) RemoveConsumingNode ¶
func (t *TableExecutor) RemoveConsumingNode(consumerName string)
func (*TableExecutor) RowsFactory ¶
func (t *TableExecutor) RowsFactory() *common.RowsFactory
func (*TableExecutor) SetColNames ¶
func (p *TableExecutor) SetColNames(colNames []string)
func (*TableExecutor) SetParent ¶
func (p *TableExecutor) SetParent(parent PushExecutor)
type UnionAll ¶
type UnionAll struct {
// contains filtered or unexported fields
}
func NewUnionAll ¶
func (*UnionAll) AddChild ¶
func (p *UnionAll) AddChild(child PushExecutor)
func (*UnionAll) ClearChildren ¶
func (p *UnionAll) ClearChildren()
func (*UnionAll) ColTypes ¶
func (p *UnionAll) ColTypes() []common.ColumnType
func (*UnionAll) ColsVisible ¶
func (p *UnionAll) ColsVisible() []bool
func (*UnionAll) GetChildren ¶
func (p *UnionAll) GetChildren() []PushExecutor
func (*UnionAll) GetParent ¶
func (p *UnionAll) GetParent() PushExecutor
func (*UnionAll) HandleRows ¶
func (u *UnionAll) HandleRows(rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*UnionAll) HandleRowsWithIndex ¶
func (u *UnionAll) HandleRowsWithIndex(index int, rowsBatch RowsBatch, ctx *ExecutionContext) error
func (*UnionAll) ReCalcSchemaFromChildren ¶
func (*UnionAll) SetColNames ¶
func (p *UnionAll) SetColNames(colNames []string)
func (*UnionAll) SetParent ¶
func (p *UnionAll) SetParent(parent PushExecutor)
Click to show internal directories.
Click to hide internal directories.