shuffle

package
v0.0.0-debug-20260702 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2026 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Shuffle

type Shuffle struct {
	ShuffleColIdx      int32
	ShuffleType        int32
	BucketNum          int32
	ShuffleColMin      int64
	ShuffleColMax      int64
	ShuffleRangeUint64 []uint64
	ShuffleRangeInt64  []int64
	RuntimeFilterSpec  *plan.RuntimeFilterSpec
	ShuffleExpr        *plan.Expr

	vm.OperatorBase
	// contains filtered or unexported fields
}

func NewArgument added in v1.2.0

func NewArgument() *Shuffle

func (*Shuffle) Call

func (shuffle *Shuffle) Call(proc *process.Process) (vm.CallResult, error)

there are two ways for shuffle to send a batch if a batch belongs to one bucket, send this batch directly, and shuffle need to do nothing else split this batch into pieces, write data into pool. if one bucket is full, send this bucket. for now, we shuffle null to the first bucket

func (*Shuffle) ExecProjection

func (shuffle *Shuffle) ExecProjection(proc *process.Process, input *batch.Batch) (*batch.Batch, error)

func (*Shuffle) Free

func (shuffle *Shuffle) Free(proc *process.Process, pipelineFailed bool, err error)

func (*Shuffle) GetOperatorBase

func (shuffle *Shuffle) GetOperatorBase() *vm.OperatorBase

func (*Shuffle) GetShufflePool

func (shuffle *Shuffle) GetShufflePool() *ShufflePool

func (*Shuffle) OpType

func (shuffle *Shuffle) OpType() vm.OpType

func (*Shuffle) Prepare

func (shuffle *Shuffle) Prepare(proc *process.Process) error

func (*Shuffle) Release

func (shuffle *Shuffle) Release()

func (*Shuffle) Reset

func (shuffle *Shuffle) Reset(proc *process.Process, pipelineFailed bool, err error)

func (*Shuffle) SetShufflePool

func (shuffle *Shuffle) SetShufflePool(sp *ShufflePool)

func (*Shuffle) String

func (shuffle *Shuffle) String(buf *bytes.Buffer)

func (Shuffle) TypeName

func (shuffle Shuffle) TypeName() string

type ShufflePool

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

func NewShufflePool

func NewShufflePool(bucketNum int32, maxHolders int32) *ShufflePool

func (*ShufflePool) Ending

func (sp *ShufflePool) Ending() bool

func (*ShufflePool) GetEndingBatch

func (sp *ShufflePool) GetEndingBatch(proc *process.Process) *batch.Batch

shuffle operator is ending, release buf and sending remaining batches

func (*ShufflePool) GetFullBatch

func (sp *ShufflePool) GetFullBatch(proc *process.Process) *batch.Batch

if there is full batch (>8192 rows) in pool, return it and put buf in the place to continue writing into pool

func (*ShufflePool) Hold

func (sp *ShufflePool) Hold()

func (*ShufflePool) Print

func (sp *ShufflePool) Print()

func (*ShufflePool) Reset

func (sp *ShufflePool) Reset(m *mpool.MPool, force bool)

func (*ShufflePool) Size

func (sp *ShufflePool) Size() int64

Jump to

Keyboard shortcuts

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