mutable

package
v1.1.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2023 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetPrimaryKeys added in v1.1.0

func GetPrimaryKeys(schema []record.Field, primaryKeys []string) []record.PrimaryKey

func GetSidsImpl added in v1.1.0

func GetSidsImpl(size int) []uint64

func GetSizeLimit added in v1.1.0

func GetSizeLimit() int64

func InitConcurLimiter added in v1.1.0

func InitConcurLimiter(limit int)

func InitMutablePool added in v1.1.0

func InitMutablePool(size int)

func InitWriteRecPool added in v1.1.0

func InitWriteRecPool(size int)

func PutSidsImpl added in v1.1.0

func PutSidsImpl(sids []uint64)

func SetSizeLimit added in v1.1.0

func SetSizeLimit(limit int64)

func WriteIntoFile added in v1.1.0

func WriteIntoFile(msb *immutable.MsBuilder, tmp bool, withPKIndex bool) error

func WriteRecordForFlush added in v1.1.0

func WriteRecordForFlush(rec *record.Record, msb *immutable.MsBuilder, tbStore immutable.TablesStore, id uint64, order bool, lastFlushTime int64, schema record.Schemas) *immutable.MsBuilder

Types

type MTable added in v1.1.0

type MTable interface {
	ApplyConcurrency(table *MemTable, f func(msName string, ids []uint64))
	SortAndDedup(table *MemTable, msName string, ids []uint64)

	FlushChunks(table *MemTable, dataPath, msName string, lock *string, tbStore immutable.TablesStore, sids []uint64)
	WriteRows(table *MemTable, rowsD *dictpool.Dict, wc WriteRowsCtx) error
	WriteCols(table *MemTable, rec *record.Record, mstsInfo map[string]*meta.MeasurementInfo, mst string) error
	Reset(table *MemTable)
	// contains filtered or unexported methods
}

type MemTable

type MemTable struct {
	MTable MTable //public method in MemTable
	// contains filtered or unexported fields
}

func GetMemTable

func GetMemTable(engineType config.EngineType) *MemTable

func NewMemTable

func NewMemTable(engineType config.EngineType) *MemTable

func (*MemTable) AddMemSize

func (t *MemTable) AddMemSize(size int64)

nolint

func (*MemTable) CreateMsInfo added in v1.1.0

func (t *MemTable) CreateMsInfo(name string, row *influx.Row, rec *record.Record, needTag bool) *MsInfo

func (*MemTable) GetMaxTimeBySidNoLock

func (t *MemTable) GetMaxTimeBySidNoLock(msName string, sid uint64) int64

func (*MemTable) GetMemSize

func (t *MemTable) GetMemSize() int64

func (*MemTable) GetMsInfo added in v1.1.0

func (t *MemTable) GetMsInfo(name string) (*MsInfo, error)

func (*MemTable) GetSids

func (t *MemTable) GetSids(msName string) []uint64

func (*MemTable) NeedFlush

func (t *MemTable) NeedFlush() bool

func (*MemTable) PutMemTable

func (t *MemTable) PutMemTable()

func (*MemTable) PutSids

func (t *MemTable) PutSids(sids []uint64)

func (*MemTable) Ref

func (t *MemTable) Ref()

func (*MemTable) Reset

func (t *MemTable) Reset()

func (*MemTable) SetIdx

func (t *MemTable) SetIdx(idx *ski.ShardKeyIndex)

func (*MemTable) SetMsInfo added in v1.1.0

func (t *MemTable) SetMsInfo(name string, msInfo *MsInfo)

func (*MemTable) UnRef

func (t *MemTable) UnRef()

type MemTables added in v1.0.0

type MemTables struct {
	// contains filtered or unexported fields
}

func (*MemTables) Init added in v1.0.0

func (m *MemTables) Init(activeTbl, snapshotTbl *MemTable, readEnable bool)

func (*MemTables) Ref added in v1.0.0

func (m *MemTables) Ref()

func (*MemTables) UnRef added in v1.0.0

func (m *MemTables) UnRef()

func (*MemTables) Values added in v1.0.0

func (m *MemTables) Values(msName string, id uint64, tr util.TimeRange, schema record.Schemas, ascending bool) *record.Record

type MsInfo

type MsInfo struct {
	Name   string // measurement name with version
	Schema record.Schemas

	TimeAsd bool
	// contains filtered or unexported fields
}

func (*MsInfo) CreateChunk added in v1.0.0

func (msi *MsInfo) CreateChunk(sid uint64) (*WriteChunk, bool)

func (*MsInfo) CreateWriteChunkForColumnStore added in v1.1.0

func (msi *MsInfo) CreateWriteChunkForColumnStore(primaryKeys, sortKeys []string)

func (*MsInfo) GetWriteChunk added in v1.1.0

func (msi *MsInfo) GetWriteChunk() *WriteChunkForColumnStore

func (*MsInfo) Init added in v1.0.0

func (msi *MsInfo) Init(row *influx.Row)

func (*MsInfo) SetWriteChunk added in v1.1.0

func (msi *MsInfo) SetWriteChunk(writeChunk *WriteChunkForColumnStore)

type SidsPool added in v1.1.0

type SidsPool struct {
	// contains filtered or unexported fields
}

type WriteChunk

type WriteChunk struct {
	Mu              sync.Mutex
	Sid             uint64
	LastFlushTime   int64
	OrderWriteRec   WriteRec
	UnOrderWriteRec WriteRec
}

func (*WriteChunk) Init

func (chunk *WriteChunk) Init(sid uint64, schema []record.Field)

type WriteChunkForColumnStore added in v1.1.0

type WriteChunkForColumnStore struct {
	Mu       sync.Mutex
	WriteRec WriteRec
	// contains filtered or unexported fields
}

type WriteRec

type WriteRec struct {
	// contains filtered or unexported fields
}

func (*WriteRec) GetRecord

func (writeRec *WriteRec) GetRecord() *record.Record

func (*WriteRec) SetLastAppendTime added in v1.1.0

func (writeRec *WriteRec) SetLastAppendTime(v int64)

func (*WriteRec) SetWriteRec added in v1.1.0

func (writeRec *WriteRec) SetWriteRec(rec *record.Record)

type WriteRowsCtx added in v1.1.0

type WriteRowsCtx struct {
	GetLastFlushTime  func(msName string, sid uint64) int64
	AddRowCountsBySid func(msName string, sid uint64, rowCounts int64)
	MstsInfo          map[string]*meta.MeasurementInfo
}

Jump to

Keyboard shortcuts

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