multi_update

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: 36 Imported by: 0

Documentation

Index

Constants

View Source
const (
	InsertWriteS3Threshold uint64 = 64 * mpool.MB
	DeleteWriteS3Threshold uint64 = 64 * mpool.MB

	RowIDIdx = 0
	PkIdx    = 1
)

Variables

View Source
var (
	DeleteBatchAttrs = []string{catalog.Row_ID, "pk"}
)

Functions

func NewPartitionMultiUpdate

func NewPartitionMultiUpdate(
	raw *MultiUpdate,
	tableID uint64,
) vm.Operator

func NewPartitionMultiUpdateFrom

func NewPartitionMultiUpdateFrom(
	from *PartitionMultiUpdate,
) vm.Operator

Types

type MultiUpdate

type MultiUpdate struct {
	MultiUpdateCtx []*MultiUpdateCtx

	Action                 UpdateAction
	IsOnduplicateKeyUpdate bool
	IsRemote               bool
	Engine                 engine.Engine

	vm.OperatorBase
	// contains filtered or unexported fields
}

func NewArgument

func NewArgument() *MultiUpdate

func (*MultiUpdate) Call

func (update *MultiUpdate) Call(proc *process.Process) (vm.CallResult, error)

func (*MultiUpdate) ExecProjection

func (update *MultiUpdate) ExecProjection(proc *process.Process, input *batch.Batch) (*batch.Batch, error)

func (*MultiUpdate) Free

func (update *MultiUpdate) Free(proc *process.Process, pipelineFailed bool, err error)

func (*MultiUpdate) GetAffectedRows

func (update *MultiUpdate) GetAffectedRows() uint64

func (*MultiUpdate) GetOperatorBase

func (update *MultiUpdate) GetOperatorBase() *vm.OperatorBase

func (*MultiUpdate) OpType

func (update *MultiUpdate) OpType() vm.OpType

func (*MultiUpdate) Prepare

func (update *MultiUpdate) Prepare(proc *process.Process) error

func (*MultiUpdate) Release

func (update *MultiUpdate) Release()

func (*MultiUpdate) Reset

func (update *MultiUpdate) Reset(proc *process.Process, pipelineFailed bool, err error)

func (*MultiUpdate) SetAffectedRows

func (update *MultiUpdate) SetAffectedRows(affectedRows uint64)

func (*MultiUpdate) String

func (update *MultiUpdate) String(buf *bytes.Buffer)

func (MultiUpdate) TypeName

func (update MultiUpdate) TypeName() string

type MultiUpdateCtx

type MultiUpdateCtx struct {
	ObjRef             *plan.ObjectRef
	TableDef           *plan.TableDef
	InsertCols         []int
	DeleteCols         []int
	PartitionCols      []int
	SkipInsertOnNullPk bool
	// InsertPkColIdx is the PK column's index within InsertCols. It is only
	// used with SkipInsertOnNullPk for REPLACE delete-only rows.
	InsertPkColIdx int
}

type PartitionMultiUpdate

type PartitionMultiUpdate struct {
	vm.OperatorBase
	// contains filtered or unexported fields
}

func (*PartitionMultiUpdate) Call

func (op *PartitionMultiUpdate) Call(
	proc *process.Process,
) (vm.CallResult, error)

func (*PartitionMultiUpdate) ExecProjection

func (op *PartitionMultiUpdate) ExecProjection(
	proc *process.Process,
	input *batch.Batch,
) (*batch.Batch, error)

func (*PartitionMultiUpdate) Free

func (op *PartitionMultiUpdate) Free(
	proc *process.Process,
	pipelineFailed bool,
	err error,
)

func (*PartitionMultiUpdate) GetAffectedRows

func (op *PartitionMultiUpdate) GetAffectedRows() uint64

func (*PartitionMultiUpdate) GetOperatorBase

func (op *PartitionMultiUpdate) GetOperatorBase() *vm.OperatorBase

func (*PartitionMultiUpdate) OpType

func (op *PartitionMultiUpdate) OpType() vm.OpType

func (*PartitionMultiUpdate) Prepare

func (op *PartitionMultiUpdate) Prepare(
	proc *process.Process,
) error

func (*PartitionMultiUpdate) Release

func (op *PartitionMultiUpdate) Release()

func (*PartitionMultiUpdate) Reset

func (op *PartitionMultiUpdate) Reset(
	proc *process.Process,
	pipelineFailed bool,
	err error,
)

func (*PartitionMultiUpdate) SetAffectedRows

func (op *PartitionMultiUpdate) SetAffectedRows(affectedRows uint64)

func (*PartitionMultiUpdate) String

func (op *PartitionMultiUpdate) String(buf *bytes.Buffer)

type UpdateAction

type UpdateAction int
const (
	UpdateWriteTable UpdateAction = iota
	UpdateWriteS3
	UpdateFlushS3Info
)

type UpdateTableType

type UpdateTableType int
const (
	UpdateMainTable UpdateTableType = iota
	UpdateUniqueIndexTable
	UpdateSecondaryIndexTable
)

Jump to

Keyboard shortcuts

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