Documentation ¶
Index ¶
- Constants
- Variables
- func CancelJobs(txn kv.Transaction, ids []int64) ([]error, error)
- func CheckIndicesCount(ctx sessionctx.Context, dbName, tableName string, indices []string) error
- func CheckRecordAndIndex(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, idx table.Index) error
- func CompareIndexData(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, idx table.Index) error
- func CompareTableRecord(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, ...) error
- func GetDDLJobs(txn kv.Transaction) ([]*model.Job, error)
- func GetHistoryDDLJobs(txn kv.Transaction) ([]*model.Job, error)
- type DDLInfo
- type RecordData
- func ScanIndexData(sc *stmtctx.StatementContext, txn kv.Transaction, kvIndex table.Index, ...) ([]*RecordData, []types.Datum, error)
- func ScanSnapshotTableRecord(sessCtx sessionctx.Context, store kv.Storage, ver kv.Version, t table.Table, ...) ([]*RecordData, int64, error)
- func ScanTableRecord(sessCtx sessionctx.Context, retriever kv.Retriever, t table.Table, ...) ([]*RecordData, int64, error)
Constants ¶
const MaxHistoryJobs = 10
MaxHistoryJobs is exported for testing.
Variables ¶
var ( // ErrDDLJobNotFound indicates the job id was not found. ErrDDLJobNotFound = terror.ClassAdmin.New(codeDDLJobNotFound, "DDL Job:%v not found") // ErrCancelFinishedDDLJob returns when cancel a finished ddl job. ErrCancelFinishedDDLJob = terror.ClassAdmin.New(codeCancelFinishedJob, "This job:%v is finished, so can't be cancelled") // ErrCannotCancelDDLJob returns when cancel a almost finished ddl job, because cancel in now may cause data inconsistency. ErrCannotCancelDDLJob = terror.ClassAdmin.New(codeCannotCancelDDLJob, "This job:%v is almost finished, can't be cancelled now") )
Functions ¶
func CancelJobs ¶
func CancelJobs(txn kv.Transaction, ids []int64) ([]error, error)
CancelJobs cancels the DDL jobs.
func CheckIndicesCount ¶
func CheckIndicesCount(ctx sessionctx.Context, dbName, tableName string, indices []string) error
CheckIndicesCount compares indices count with table count. It returns nil if the count from the index is equal to the count from the table columns, otherwise it returns an error with a different information.
func CheckRecordAndIndex ¶
func CheckRecordAndIndex(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, idx table.Index) error
CheckRecordAndIndex is exported for testing.
func CompareIndexData ¶
func CompareIndexData(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, idx table.Index) error
CompareIndexData compares index data one by one. It returns nil if the data from the index is equal to the data from the table columns, otherwise it returns an error with a different set of records.
func CompareTableRecord ¶
func CompareTableRecord(sessCtx sessionctx.Context, txn kv.Transaction, t table.Table, data []*RecordData, exact bool) error
CompareTableRecord compares data and the corresponding table data one by one. It returns nil if data is equal to the data that scans from table, otherwise it returns an error with a different set of records. If exact is false, only compares handle.
Types ¶
type DDLInfo ¶
type DDLInfo struct { SchemaVer int64 ReorgHandle int64 // it's only used for DDL information. Job *model.Job }
DDLInfo is for DDL information.
func GetDDLInfo ¶
func GetDDLInfo(txn kv.Transaction) (*DDLInfo, error)
GetDDLInfo returns DDL information.
type RecordData ¶
RecordData is the record data composed of a handle and values.
func ScanIndexData ¶
func ScanIndexData(sc *stmtctx.StatementContext, txn kv.Transaction, kvIndex table.Index, startVals []types.Datum, limit int64) ( []*RecordData, []types.Datum, error)
ScanIndexData scans the index handles and values in a limited number, according to the index information. It returns data and the next startVals until it doesn't have data, then returns data is nil and the next startVals is the values which can't get data. If startVals = nil and limit = -1, it returns the index data of the whole.
func ScanSnapshotTableRecord ¶
func ScanSnapshotTableRecord(sessCtx sessionctx.Context, store kv.Storage, ver kv.Version, t table.Table, startHandle, limit int64) ( []*RecordData, int64, error)
ScanSnapshotTableRecord scans the ver version of the table data in a limited number. It returns data and the next startHandle until it doesn't have data, then returns data is nil and the next startHandle is the handle which can't get data. If startHandle = 0 and limit = -1, it returns the table data of the whole.
func ScanTableRecord ¶
func ScanTableRecord(sessCtx sessionctx.Context, retriever kv.Retriever, t table.Table, startHandle, limit int64) ( []*RecordData, int64, error)
ScanTableRecord scans table row handles and column values in a limited number. It returns data and the next startHandle until it doesn't have data, then returns data is nil and the next startHandle is the handle which can't get data. If startHandle = 0 and limit = -1, it returns the table data of the whole.