store

package
v0.5.2 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BatchWrite

func BatchWrite(e *badger.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 Init

func Init(config Config) error

func MustInit

func MustInit(config Config)

func Shutdown

func Shutdown()

func Update

func Update(fn func(txn *badger.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 *badger.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) GenKey

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

func (*Allocator) GenValue

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

func (*Allocator) ReleaseAll

func (bk *Allocator) ReleaseAll()

type Config

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

func DefaultConfig

func DefaultConfig(dataPath string) Config

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

Jump to

Keyboard shortcuts

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