mmapv2

package
v0.0.0-...-fe13e1c Latest Latest
Warning

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

Go to latest
Published: Feb 26, 2020 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

The MMAPv2 storage engine.

The primary key is always the first column, or, the first column is always the primary key. Also, the primary key is auto_increment and is always overriden by the storage engine (you can't specify an primary key on insert, the table will replace it). The primary key is a uint32 (INTEGER UNSIGNED in mysql).

The storage engine is called 'MMAPv2' in order to prevent confusion with MongoDB's original storage engine called 'MMAPv1'.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BAT

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

func (*BAT) Commit

func (b *BAT) Commit() error

func (*BAT) Rollback

func (b *BAT) Rollback() error

type ENV

type ENV struct {
	DB *bbolt.DB
}

func (*ENV) Begin

func (e *ENV) Begin() (*BAT, error)

func (*ENV) Table

func (e *ENV) Table(name string) *Table

type SqlTable

type SqlTable struct {
	Table   *Table
	SqlName string
	Data    sql.Schema
}

func (*SqlTable) Delete

func (s *SqlTable) Delete(ctx *sql.Context, row sql.Row) error

func (*SqlTable) GetSubsetTable

func (s *SqlTable) GetSubsetTable(ctx *sql.Context, hint interface{}, filter eplan.TableRowFilter) (sql.Table, error)

func (*SqlTable) Insert

func (s *SqlTable) Insert(ctx *sql.Context, row sql.Row) error

func (*SqlTable) IsPrimaryKey

func (s *SqlTable) IsPrimaryKey(column string) bool

func (*SqlTable) Name

func (s *SqlTable) Name() string

func (*SqlTable) PartitionRows

func (s *SqlTable) PartitionRows(ctx *sql.Context, part sql.Partition) (sql.RowIter, error)

func (*SqlTable) Partitions

func (s *SqlTable) Partitions(*sql.Context) (sql.PartitionIter, error)

func (*SqlTable) Schema

func (s *SqlTable) Schema() sql.Schema

func (*SqlTable) String

func (s *SqlTable) String() string

func (*SqlTable) Update

func (s *SqlTable) Update(ctx *sql.Context, oldr, newr sql.Row) error

type Table

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

func (*Table) Lookup

func (t *Table) Lookup(bat *BAT) (*TableIndexLookup, error)

func (*Table) RawDelete

func (t *Table) RawDelete(bat *BAT, row []interface{}) error

func (*Table) RawInsert

func (t *Table) RawInsert(bat *BAT, row []interface{}) error

func (*Table) RawIterator

func (t *Table) RawIterator(bat *BAT) (TableIterator, error)

func (*Table) RawUpdate

func (t *Table) RawUpdate(bat *BAT, oldr, newr []interface{}) error

func (*Table) RawUpsert

func (t *Table) RawUpsert(bat *BAT, row []interface{}) error

DEPRECATED

type TableIndexLookup

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

func (*TableIndexLookup) Close

func (til *TableIndexLookup) Close() error

func (*TableIndexLookup) EndOr

func (til *TableIndexLookup) EndOr()

func (*TableIndexLookup) Equals

func (til *TableIndexLookup) Equals(col uint32, val interface{})

func (*TableIndexLookup) GreaterThan

func (til *TableIndexLookup) GreaterThan(col uint32, val interface{}, orEq bool) (taken bool)

func (*TableIndexLookup) OrEquals

func (til *TableIndexLookup) OrEquals(col uint32, val interface{})

func (*TableIndexLookup) Range

func (til *TableIndexLookup) Range(col uint32, fKey, tKey interface{}, fEq, tEq bool) (taken bool)

func (*TableIndexLookup) RawIterator

func (til *TableIndexLookup) RawIterator() (TableIterator, error)

type TableIterator

type TableIterator interface {
	Close() error
	RawNext() ([]interface{}, error)
}

Jump to

Keyboard shortcuts

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