Documentation ¶
Index ¶
- Constants
- func GetSplitFields(table *model.TableInfo, splitFields []string) ([]*model.ColumnInfo, error)
- type BucketIterator
- type ChunkIterator
- type LimitIterator
- type RandomIterator
- type RangeInfo
- func (r *RangeInfo) Copy() *RangeInfo
- func (r *RangeInfo) GetBucketIndexLeft() int
- func (r *RangeInfo) GetBucketIndexRight() int
- func (r *RangeInfo) GetChunk() *chunk.Range
- func (r *RangeInfo) GetChunkIndex() int
- func (r *RangeInfo) GetTableIndex() int
- func (r *RangeInfo) ToNode() *checkpoints.Node
- func (r *RangeInfo) Update(column, lower, upper string, updateLower, updateUpper bool, ...)
Constants ¶
View Source
const DefaultChannelBuffer = 1024
View Source
const (
SplitThreshold = 1000
)
Variables ¶
This section is empty.
Functions ¶
func GetSplitFields ¶
GetSplitFields returns fields to split chunks, order by pk, uk, index, columns.
Types ¶
type BucketIterator ¶
type BucketIterator struct {
// contains filtered or unexported fields
}
func NewBucketIterator ¶
func (*BucketIterator) Close ¶
func (s *BucketIterator) Close()
func (*BucketIterator) GetIndexID ¶
func (s *BucketIterator) GetIndexID() int64
type ChunkIterator ¶
type ChunkIterator interface { // Next seeks the next chunk, return nil if seeks to end. Next() (*chunk.Range, error) Close() }
ChunkIterator generate next chunk for only one table lazily.
type LimitIterator ¶
type LimitIterator struct {
// contains filtered or unexported fields
}
func NewLimitIterator ¶
func (*LimitIterator) Close ¶
func (lmt *LimitIterator) Close()
func (*LimitIterator) GetIndexID ¶
func (lmt *LimitIterator) GetIndexID() int64
type RandomIterator ¶
type RandomIterator struct {
// contains filtered or unexported fields
}
func NewRandomIterator ¶
func (*RandomIterator) Close ¶
func (s *RandomIterator) Close()
type RangeInfo ¶
type RangeInfo struct { ChunkRange *chunk.Range `json:"chunk-range"` // for bucket checkpoint IndexID int64 `json:"index-id"` ProgressID string `json:"progress-id"` }
RangeInfo represents the unit of a process chunk. It's the only entrance of checkpoint.
func FromNode ¶
func FromNode(n *checkpoints.Node) *RangeInfo
func (*RangeInfo) GetBucketIndexLeft ¶
func (*RangeInfo) GetBucketIndexRight ¶
func (*RangeInfo) GetChunkIndex ¶
func (*RangeInfo) GetTableIndex ¶
GetTableIndex return the index of table diffs. IMPORTANT!!! We need to keep the tables order during checkpoint. So we should have to save the config info to checkpoint file too
func (*RangeInfo) ToNode ¶
func (r *RangeInfo) ToNode() *checkpoints.Node
Click to show internal directories.
Click to hide internal directories.