Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrAppendableObjectNotFound = moerr.NewAppendableObjectNotFoundNoCtx()
)
Functions ¶
This section is empty.
Types ¶
type Object ¶ added in v1.2.0
type Object interface {
ObjectReplayer
GetRowsOnReplay() uint64
GetID() *common.ID
IsAppendable() bool
PrepareCompact() bool
PrepareCompactInfo() (bool, string)
Rows() (int, error)
CheckFlushTaskRetry(startts types.TS) bool
Prefetch(blkID uint16) error
GetMeta() any
MakeAppender() (ObjectAppender, error)
ApplyDebugBatch(bat *containers.Batch, txn txnif.AsyncTxn) (ans []txnif.TxnEntry, err error)
TryUpgrade() error
// check if all rows are committed before ts
// NOTE: here we assume that the object is visible to the ts
// if the object is an appendable object:
// 1. if the object is not frozen, return false
// 2. if the object is frozen and in-memory, check with the max ts committed
// 3. if the object is persisted, return false
// if the object is not an appendable object:
// only check with the created ts
CoarseCheckAllRowsCommittedBefore(ts types.TS) bool
GetDuplicatedRows(
ctx context.Context,
txn txnif.TxnReader,
keys containers.Vector,
keysZM index.ZM,
from, to types.TS,
rowIDs containers.Vector,
mp *mpool.MPool,
) (err error)
GetValue(ctx context.Context, txn txnif.AsyncTxn, readSchema any, blkID uint16, row, col int, skipCheckDelete bool, mp *mpool.MPool) (any, bool, error)
PPString(level common.PPLevel, depth int, prefix string, blkid int) string
EstimateMemSize() int
GetRuntime() *dbutils.Runtime
Init() error
GetFs() fileservice.FileService
FreezeAppend()
Contains(
ctx context.Context,
txn txnif.TxnReader,
keys containers.Vector,
keysZM index.ZM,
mp *mpool.MPool) (err error)
Close()
Scan(
ctx context.Context,
bat **containers.Batch,
txn txnif.TxnReader,
readSchema any,
blkID uint16,
colIdxes []int,
mp *mpool.MPool,
) (err error)
FillBlockTombstones(
ctx context.Context,
txn txnif.TxnReader,
blkID *objectio.Blockid,
deletes **nulls.Nulls,
deleteStartOffset uint64,
mp *mpool.MPool) error
CollectObjectTombstoneInRange(
ctx context.Context,
start, end types.TS,
objID *types.Objectid,
bat **containers.Batch,
mp *mpool.MPool,
vpool *containers.VectorPool,
) (err error)
ScanInMemory(
ctx context.Context,
batches map[uint32]*containers.BatchWithVersion,
start, end types.TS,
mp *mpool.MPool,
) (err error)
UpdateMeta(any)
}
type ObjectAppender ¶ added in v1.2.0
type ObjectAppender interface {
GetID() *common.ID
GetMeta() any
// see more notes in flushtabletail.go
LockFreeze()
UnlockFreeze()
CheckFreeze() bool
IsSameColumns(otherSchema any) bool
PrepareAppend(isMergeCompact bool, rows uint32,
txn txnif.AsyncTxn) (
node txnif.AppendNode, created bool, n uint32, err error)
ApplyAppend(bat *containers.Batch,
txn txnif.AsyncTxn,
) (int, error)
IsAppendable() bool
ReplayAppend(bat *containers.Batch,
txn txnif.AsyncTxn) (int, error)
Close()
PPString() string
}
type ObjectReplayer ¶ added in v1.2.0
type ObjectReplayer interface {
OnReplayAppend(node txnif.AppendNode) (err error)
OnReplayAppendPayload(bat *containers.Batch) (err error)
}
type Table ¶
type Table interface {
GetHandle(bool) TableHandle
ApplyHandle(TableHandle, bool)
}
type TableHandle ¶
type TableHandle interface {
GetAppender() (ObjectAppender, error)
SetAppender(*common.ID) ObjectAppender
}
Click to show internal directories.
Click to hide internal directories.