store

package
v0.6.5 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2021 License: BSD-3-Clause Imports: 9 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrKeyNotFound         = badger.ErrKeyNotFound
	DefaultIteratorOptions = badger.DefaultIteratorOptions
)
View Source
var (
	ErrAlreadyExists = fmt.Errorf("already exists")
	ErrEmptyObject   = fmt.Errorf("empty object")
)

Functions

func BatchWrite

func BatchWrite(e *Entry)

BatchWrite is the helper function to set the entry backed by an internal flusher. Which makes writes faster but there is no guarantee that write has been done successfully, since we bypass the errors. TODO:: Maybe improve the flusher structure to return error in the case

func DB

func DB() *badger.DB

DB returns the underlying object of the database

func Delete added in v0.5.25

func Delete(txn *Txn, alloc *Allocator, keyParts ...interface{}) error

func Exists added in v0.5.25

func Exists(txn *Txn, alloc *Allocator, keyParts ...interface{}) bool

func Get added in v0.5.25

func Get(txn *Txn, alloc *Allocator, keyParts ...interface{}) ([]byte, error)

func GetByKey added in v0.5.25

func GetByKey(txn *Txn, alloc *Allocator, key []byte) ([]byte, error)

func Init

func Init(config Config) (err error)

func Marshal added in v0.5.25

func Marshal(txn *Txn, alloc *Allocator, m proto.Message, keyParts ...interface{}) error

func Move added in v0.5.25

func Move(txn *Txn, oldKey, newKey []byte) error

func MustInit

func MustInit(config Config)

func Set added in v0.5.25

func Set(txn *Txn, alloc *Allocator, val []byte, keyParts ...interface{}) error

func Shutdown

func Shutdown()

Shutdown stops all the background go-routines and closed the underlying database

func Unmarshal added in v0.5.25

func Unmarshal(txn *Txn, alloc *Allocator, m proto.Message, keyParts ...interface{}) error

func UnmarshalMerge added in v0.5.25

func UnmarshalMerge(txn *Txn, alloc *Allocator, m proto.Message, keyParts ...interface{}) error

func Update

func Update(fn func(txn *Txn) error) (err error)

Update executes a function, creating and managing a read-write transaction for the user. Error returned by the function is relayed by the Update method. It retries in case of badger.ErrConflict returned.

func View

func View(fn func(txn *Txn) error) (err error)

View executes a function creating and managing a read-only transaction for the user. Error returned by the function is relayed by the View method. It retries in case of badger.ErrConflict returned.

Types

type Allocator

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

func NewAllocator

func NewAllocator() *Allocator

func (*Allocator) FillWith added in v0.5.25

func (bk *Allocator) FillWith(v []byte) []byte

FillWith acquired a byte slice with the capacity of 'v' and append/copy v into it.

func (*Allocator) Gen added in v0.5.25

func (bk *Allocator) Gen(v ...interface{}) []byte

Gen acquired a byte slice fitted to hold all the v variables.

func (*Allocator) GenKey

func (bk *Allocator) GenKey(v ...interface{}) []byte

Deprecated

func (*Allocator) GenValue

func (bk *Allocator) GenValue(m proto.Message) []byte

Deprecated

func (*Allocator) Marshal added in v0.5.25

func (bk *Allocator) Marshal(m proto.Message) []byte

Marshal acquires a byte slice fitted for message 'm'

func (*Allocator) ReleaseAll

func (bk *Allocator) ReleaseAll()

ReleaseAll releases all the byte slices.

type Config

type Config struct {
	DirPath             string
	ConflictRetries     int
	ConflictMaxInterval time.Duration
	BatchWorkers        int
	BatchSize           int
}

func DefaultConfig

func DefaultConfig(dataPath string) Config

type Entry added in v0.5.6

type Entry = badger.Entry

func NewEntry added in v0.5.15

func NewEntry(key, value []byte) *Entry

type IterOption

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

func NewIterOption

func NewIterOption() *IterOption

func (*IterOption) Backward

func (o *IterOption) Backward() bool

func (*IterOption) OffsetKey

func (o *IterOption) OffsetKey() []byte

func (*IterOption) OnClose

func (o *IterOption) OnClose(key []byte)

func (*IterOption) SetBackward

func (o *IterOption) SetBackward() *IterOption

func (*IterOption) SetForward

func (o *IterOption) SetForward() *IterOption

func (*IterOption) SetOffsetKey

func (o *IterOption) SetOffsetKey(offset []byte) *IterOption

func (*IterOption) SetOnClose

func (o *IterOption) SetOnClose(f func(key []byte)) *IterOption

type ListOption

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

func NewListOption

func NewListOption() *ListOption

func (*ListOption) Backward

func (o *ListOption) Backward() bool

func (*ListOption) Limit

func (o *ListOption) Limit() int32

func (*ListOption) SetBackward

func (o *ListOption) SetBackward() *ListOption

func (*ListOption) SetForward

func (o *ListOption) SetForward() *ListOption

func (*ListOption) SetLimit

func (o *ListOption) SetLimit(limit int32) *ListOption

func (*ListOption) SetSkip

func (o *ListOption) SetSkip(skip int32) *ListOption

func (*ListOption) Skip

func (o *ListOption) Skip() int32

type Store added in v0.5.6

type Store = badger.DB

type Txn added in v0.5.6

type Txn = badger.Txn

Jump to

Keyboard shortcuts

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