db

package
v0.0.0-...-303e327 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	DefaultBatchProcessCount = 1024
	DefaultWritePriRatio     = 0.7       // 70 %
	DefaultWriteBufferSize   = 1 << 20   // 1 M
	DefaultLRUCache          = 256 << 20 // 256 M
)

Variables

View Source
var (
	ErrStopped         = errors.New("db: err stopped")
	ErrShardMetaNotDir = errors.New("db: shard meta not directory")
	ErrWrongConfig     = errors.New("db: wrong config item")
)

Functions

This section is empty.

Types

type MessageType

type MessageType int32

type MetaConfig

type MetaConfig struct {
	MetaRootPrefix     string            `json:"meta_root_prefix"`
	SupportInline      bool              `json:"support_inline"`
	TinyFileThresholdB int               `json:"tinyfile_threshold_B"`
	Sync               bool              `json:"sync"`
	BatchProcessCount  int64             `json:"batch_process_count"`
	WritePriRatio      float64           `json:"write_pri_ratio"`
	MetaQos            qos.LevelConfig   `json:"meta_qos"`
	RocksdbOption      rdb.RocksDBOption `json:"rocksdb_option"`
}

type MetaDBWapper

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

func (MetaDBWapper) Close

func (md MetaDBWapper) Close(ctx context.Context) (err error)

func (MetaDBWapper) Delete

func (md MetaDBWapper) Delete(ctx context.Context, key []byte) (err error)

func (MetaDBWapper) DeleteRange

func (md MetaDBWapper) DeleteRange(ctx context.Context, start, end []byte) (err error)

func (MetaDBWapper) DirectDelete

func (md MetaDBWapper) DirectDelete(ctx context.Context, key []byte) (err error)

func (MetaDBWapper) DirectPut

func (md MetaDBWapper) DirectPut(ctx context.Context, kv rdb.KV) (err error)

func (MetaDBWapper) Flush

func (md MetaDBWapper) Flush(ctx context.Context) (err error)

func (MetaDBWapper) Get

func (md MetaDBWapper) Get(ctx context.Context, key []byte) (value []byte, err error)

func (MetaDBWapper) NewIterator

func (md MetaDBWapper) NewIterator(ctx context.Context, opts ...rdb.OpOption) rdb.Iterator

func (MetaDBWapper) Put

func (md MetaDBWapper) Put(ctx context.Context, kv rdb.KV) (err error)

func (MetaDBWapper) SetHandleIOError

func (md MetaDBWapper) SetHandleIOError(handler func(err error))

func (MetaDBWapper) SetIOStat

func (md MetaDBWapper) SetIOStat(stat *flow.IOFlowStat)

type MetaHandler

type MetaHandler interface {
	Get(ctx context.Context, key []byte) ([]byte, error)
	Put(ctx context.Context, kv rdb.KV) error
	Delete(ctx context.Context, key []byte) error
	DeleteRange(ctx context.Context, start, end []byte) error
	Flush(ctx context.Context) error
	NewIterator(ctx context.Context, opts ...rdb.OpOption) rdb.Iterator
	SetIOStat(stat *flow.IOFlowStat)
	SetHandleIOError(handler func(err error))
	Close(ctx context.Context) error
}

func NewMetaHandler

func NewMetaHandler(dirpath string, config MetaConfig) (mh MetaHandler, err error)

type Request

type Request struct {
	Type MessageType
	Data interface{}
	// contains filtered or unexported fields
}

func (*Request) Register

func (r *Request) Register() <-chan Result

func (*Request) Trigger

func (r *Request) Trigger(x Result)

type Result

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

Jump to

Keyboard shortcuts

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