Documentation
¶
Index ¶
- Variables
- type BackendTable
- type FieldInfo
- type GridKVDriver
- func (d *GridKVDriver) AddField(tableID uint16, field string) error
- func (d *GridKVDriver) AddFieldIndex(label, field string) error
- func (d *GridKVDriver) AddTableEntryInfo(tx *pebblebulk.PebbleBulk, rowID []byte, rowLoc *benchtop.RowLoc) error
- func (d *GridKVDriver) BulkLoad(tableID uint16, rows chan *benchtop.Row) error
- func (d *GridKVDriver) BulkLoadBatch(tx *pebblebulk.PebbleBulk, entries []*benchtop.Row, snap *pebble.Snapshot) error
- func (d *GridKVDriver) BulkLoadInternal(targetID uint16, inputs chan *benchtop.Row, tx *pebblebulk.PebbleBulk) error
- func (d *GridKVDriver) Close()
- func (d *GridKVDriver) DeleteRowField(tableID uint16, field, rowID string) error
- func (d *GridKVDriver) Get(name string) (benchtop.TableStore, error)
- func (dr *GridKVDriver) GetID(s string) (uint64, error)
- func (dr *GridKVDriver) GetIDs(ids []string) ([]uint64, error)
- func (d *GridKVDriver) GetIDsForLabel(label string) chan string
- func (d *GridKVDriver) GetIDsForTable(tableID uint16) chan string
- func (d *GridKVDriver) GetIndicesForTable(tableID uint16) chan benchtop.Index
- func (d *GridKVDriver) GetLabels(edges bool, removePrefix bool) chan string
- func (d *GridKVDriver) GetLocBatch(ctx context.Context, ids []string) (map[string]*IDInfo, error)
- func (d *GridKVDriver) GetOrLoadTable(name string) (*BackendTable, error)
- func (d *GridKVDriver) GetTableByID(id uint16) (*BackendTable, error)
- func (d *GridKVDriver) GetVertexLocBatch(ctx context.Context, ids []string) (map[string]*IDInfo, error)
- func (d *GridKVDriver) GetVertexLocByUIDBatch(ctx context.Context, uids []uint64) (map[uint64]*IDInfo, error)
- func (d *GridKVDriver) InvalidateLoc(tableID uint16, rowID string)
- func (d *GridKVDriver) List() []string
- func (d *GridKVDriver) ListFields() []FieldInfo
- func (d *GridKVDriver) LoadFields() error
- func (d *GridKVDriver) New(name string, columns []benchtop.ColumnDef) (benchtop.TableStore, error)
- func (d *GridKVDriver) RemoveField(tableID uint16, field string) error
- func (d *GridKVDriver) RemoveFieldIndex(label, field string) error
- func (d *GridKVDriver) RowIdsByHas(field string, value any, op query.Condition) chan benchtop.Index
- func (d *GridKVDriver) RowIdsByLabelFieldValue(label, field string, value any, op query.Condition) chan benchtop.Index
- func (d *GridKVDriver) RowIdsByLabelsFieldValue(labels []string, field string, value any, op query.Condition) chan benchtop.Index
- func (d *GridKVDriver) RowLocsByLabel(label string) chan benchtop.Index
- func (dr *GridKVDriver) TranslateID(id uint64) (string, error)
- func (d *GridKVDriver) ValuesWithin(v any) []any
- type IDInfo
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNotFound = errors.New("row not found in any table")
Functions ¶
This section is empty.
Types ¶
type BackendTable ¶
type GridKVDriver ¶
type GridKVDriver struct {
Lock sync.RWMutex
PebbleLock sync.RWMutex
Pkv *pebblebulk.PebbleKV
Tables map[string]*BackendTable
TablesByID map[uint16]*BackendTable
TableDr benchtop.TableDriver
// contains filtered or unexported fields
}
func NewGridKVDriver ¶
func NewGridKVDriver(path string, driver string) (*GridKVDriver, error)
func (*GridKVDriver) AddFieldIndex ¶
func (d *GridKVDriver) AddFieldIndex(label, field string) error
func (*GridKVDriver) AddTableEntryInfo ¶
func (d *GridKVDriver) AddTableEntryInfo(tx *pebblebulk.PebbleBulk, rowID []byte, rowLoc *benchtop.RowLoc) error
func (*GridKVDriver) BulkLoad ¶
func (d *GridKVDriver) BulkLoad(tableID uint16, rows chan *benchtop.Row) error
func (*GridKVDriver) BulkLoadBatch ¶
func (d *GridKVDriver) BulkLoadBatch(tx *pebblebulk.PebbleBulk, entries []*benchtop.Row, snap *pebble.Snapshot) error
func (*GridKVDriver) BulkLoadInternal ¶
func (d *GridKVDriver) BulkLoadInternal(targetID uint16, inputs chan *benchtop.Row, tx *pebblebulk.PebbleBulk) error
func (*GridKVDriver) Close ¶
func (d *GridKVDriver) Close()
func (*GridKVDriver) DeleteRowField ¶
func (d *GridKVDriver) DeleteRowField(tableID uint16, field, rowID string) error
func (*GridKVDriver) Get ¶
func (d *GridKVDriver) Get(name string) (benchtop.TableStore, error)
func (*GridKVDriver) GetIDsForLabel ¶
func (d *GridKVDriver) GetIDsForLabel(label string) chan string
func (*GridKVDriver) GetIDsForTable ¶
func (d *GridKVDriver) GetIDsForTable(tableID uint16) chan string
func (*GridKVDriver) GetIndicesForTable ¶
func (d *GridKVDriver) GetIndicesForTable(tableID uint16) chan benchtop.Index
func (*GridKVDriver) GetLabels ¶
func (d *GridKVDriver) GetLabels(edges bool, removePrefix bool) chan string
func (*GridKVDriver) GetLocBatch ¶
func (*GridKVDriver) GetOrLoadTable ¶
func (d *GridKVDriver) GetOrLoadTable(name string) (*BackendTable, error)
func (*GridKVDriver) GetTableByID ¶
func (d *GridKVDriver) GetTableByID(id uint16) (*BackendTable, error)
func (*GridKVDriver) GetVertexLocBatch ¶
func (d *GridKVDriver) GetVertexLocBatch(ctx context.Context, ids []string) (map[string]*IDInfo, error)
GetVertexLocBatch resolves vertex RowLocs only (no edge scan fallback). This is significantly faster for V() traversal hydration paths.
func (*GridKVDriver) GetVertexLocByUIDBatch ¶
func (d *GridKVDriver) GetVertexLocByUIDBatch(ctx context.Context, uids []uint64) (map[uint64]*IDInfo, error)
GetVertexLocByUIDBatch resolves vertex RowLocs by numeric UID using one iterator pass in UID-sorted order to minimize random seeks.
func (*GridKVDriver) InvalidateLoc ¶
func (d *GridKVDriver) InvalidateLoc(tableID uint16, rowID string)
func (*GridKVDriver) List ¶
func (d *GridKVDriver) List() []string
func (*GridKVDriver) ListFields ¶
func (d *GridKVDriver) ListFields() []FieldInfo
func (*GridKVDriver) LoadFields ¶
func (d *GridKVDriver) LoadFields() error
func (*GridKVDriver) New ¶
func (d *GridKVDriver) New(name string, columns []benchtop.ColumnDef) (benchtop.TableStore, error)
func (*GridKVDriver) RemoveField ¶
func (d *GridKVDriver) RemoveField(tableID uint16, field string) error
func (*GridKVDriver) RemoveFieldIndex ¶
func (d *GridKVDriver) RemoveFieldIndex(label, field string) error
func (*GridKVDriver) RowIdsByHas ¶
func (*GridKVDriver) RowIdsByLabelFieldValue ¶
func (*GridKVDriver) RowIdsByLabelsFieldValue ¶
func (*GridKVDriver) RowLocsByLabel ¶
func (d *GridKVDriver) RowLocsByLabel(label string) chan benchtop.Index
func (*GridKVDriver) TranslateID ¶
func (dr *GridKVDriver) TranslateID(id uint64) (string, error)
func (*GridKVDriver) ValuesWithin ¶
func (d *GridKVDriver) ValuesWithin(v any) []any
Click to show internal directories.
Click to hide internal directories.