db

package
v0.0.11 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackendType

type BackendType string
const (
	BadgerDBBackend  BackendType = "badgerdb"
	GoLevelDBBackend BackendType = "goleveldb"
	MapDBBackend     BackendType = "mapdb"
)

type BadgerDB

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

func NewBadgerDB

func NewBadgerDB(name string, dir string) (*BadgerDB, error)

func (*BadgerDB) Close

func (db *BadgerDB) Close() error

func (*BadgerDB) GetBucket

func (db *BadgerDB) GetBucket(id BucketID) (Bucket, error)

type Bucket

type Bucket interface {
	Get(key []byte) ([]byte, error)
	Has(key []byte) bool
	Set(key []byte, value []byte) error
	Delete(key []byte) error
}

Bucket

type BucketID

type BucketID string
const (
	// MerkleTrie maps RLP encoded data from sha3(data)
	MerkleTrie BucketID = ""

	// BytesByHash maps data except merkle trie nodes from sha3(data)
	BytesByHash BucketID = "S"

	// TransactionLocatorByHash maps transaction locator from transaction hash.
	TransactionLocatorByHash BucketID = "T"

	// BlockHeaderHashByHeight maps hash of encoded block header from height.
	BlockHeaderHashByHeight BucketID = "H"

	// BlockV1ByHash maps block V1 from block V1 hash.
	BlockV1ByHash BucketID = "B"

	// ReceiptV1ByHash maps receipt V1 from tx V3 hash.
	ReceiptV1ByHash BucketID = "R"

	// ChainProperty is general key value map for chain property.
	ChainProperty BucketID = "C"
)

Bucket ID

type Database

type Database interface {
	GetBucket(id BucketID) (Bucket, error)
	Close() error
}

func NewMapDB

func NewMapDB() Database

func Open

func Open(dir, dbtype, name string) (Database, error)

type GoLevelDB

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

func NewGoLevelDB

func NewGoLevelDB(name string, dir string) (*GoLevelDB, error)

func NewGoLevelDBWithOpts

func NewGoLevelDBWithOpts(name string, dir string, o *opt.Options) (*GoLevelDB, error)

func (*GoLevelDB) Close

func (db *GoLevelDB) Close() error

func (*GoLevelDB) GetBucket

func (db *GoLevelDB) GetBucket(id BucketID) (Bucket, error)

type LayerDB

type LayerDB interface {
	Database
	Flush(write bool) error
}

func NewLayerDB

func NewLayerDB(dbase Database) LayerDB

Jump to

Keyboard shortcuts

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