distsql

package
v0.0.0-...-3056823 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2016 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ColumnsToProto

func ColumnsToProto(columns []*model.ColumnInfo, pkIsHandle bool) []*tipb.ColumnInfo

ColumnsToProto converts a slice of model.ColumnInfo to a slice of tipb.ColumnInfo.

func FieldTypeFromPBColumn

func FieldTypeFromPBColumn(col *tipb.ColumnInfo) *types.FieldType

FieldTypeFromPBColumn creates a types.FieldType from tipb.ColumnInfo.

func IndexToProto

func IndexToProto(t *model.TableInfo, idx *model.IndexInfo) *tipb.IndexInfo

IndexToProto converts a model.IndexInfo to a tipb.IndexInfo.

func ProtoColumnsToFieldTypes

func ProtoColumnsToFieldTypes(pColumns []*tipb.ColumnInfo) []*types.FieldType

ProtoColumnsToFieldTypes converts tipb column info slice to FieldTyps slice.

func SupportExpression

func SupportExpression(client kv.Client, expr *tipb.Expr) bool

SupportExpression checks if the expression is supported by the client.

Types

type PartialResult

type PartialResult interface {
	// Next returns the next row of the sub result.
	// If no more row to return, data would be nil.
	Next() (handle int64, data []types.Datum, err error)
	// Close closes the partial result.
	Close() error
}

PartialResult is the result from a single region server.

type SelectResult

type SelectResult interface {
	// Next gets the next partial result.
	Next() (PartialResult, error)
	// SetFields sets the expected result type.
	SetFields(fields []*types.FieldType)
	// Close closes the iterator.
	Close() error
	// Fetch fetches partial results from client.
	// The caller should call SetFields() before call Fetch().
	Fetch()
	// IgnoreData sets ignore data attr to true.
	// For index double scan, we do not need row data when scanning index.
	IgnoreData()
}

SelectResult is an iterator of coprocessor partial results.

func Select

func Select(client kv.Client, req *tipb.SelectRequest, keyRanges []kv.KeyRange, concurrency int, keepOrder bool) (SelectResult, error)

Select do a select request, returns SelectResult. conncurrency: The max concurrency for underlying coprocessor request. keepOrder: If the result should returned in key order. For example if we need keep data in order by

scan index, we should set keepOrder to true.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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