ethdb

package
v1.8.27 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2019 License: GPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const IdealBatchSize = 100 * 1024

Code using batches should try to add this much data to the batch. The value was determined empirically.

Variables

View Source
var OpenFileLimit = 64

Functions

This section is empty.

Types

type Batch

type Batch interface {
	Putter
	Deleter
	ValueSize() int // amount of data in the batch
	Write() error
	// Reset resets the batch for reuse
	Reset()
}

Batch is a write-only database that commits changes to its host database when Write is called. Batch cannot be used concurrently.

func NewTableBatch added in v1.5.7

func NewTableBatch(db Database, prefix string) Batch

NewTableBatch returns a Batch object which prefixes all keys with a given string.

type Database

type Database interface {
	Putter
	Deleter
	Get(key []byte) ([]byte, error)
	Has(key []byte) (bool, error)
	Close()
	NewBatch() Batch
}

Database wraps all database operations. All methods are safe for concurrent use.

func NewTable added in v1.5.7

func NewTable(db Database, prefix string) Database

NewTable returns a Database object that prefixes all keys with a given string.

type Deleter added in v1.8.12

type Deleter interface {
	Delete(key []byte) error
}

Deleter wraps the database delete operation supported by both batches and regular databases.

type LDBDatabase added in v0.9.39

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

func NewLDBDatabase added in v0.9.39

func NewLDBDatabase(file string, cache int, handles int) (*LDBDatabase, error)

NewLDBDatabase returns a LevelDB wrapped object.

func (*LDBDatabase) Close added in v0.9.39

func (db *LDBDatabase) Close()

func (*LDBDatabase) Delete added in v0.9.39

func (db *LDBDatabase) Delete(key []byte) error

Delete deletes the key from the queue and database

func (*LDBDatabase) Get added in v0.9.39

func (db *LDBDatabase) Get(key []byte) ([]byte, error)

Get returns the given key if it's present.

func (*LDBDatabase) Has added in v1.7.0

func (db *LDBDatabase) Has(key []byte) (bool, error)

func (*LDBDatabase) LDB added in v0.9.39

func (db *LDBDatabase) LDB() *leveldb.DB

func (*LDBDatabase) Meter added in v0.9.39

func (db *LDBDatabase) Meter(prefix string)

Meter configures the database metrics collectors and

func (*LDBDatabase) NewBatch added in v1.2.2

func (db *LDBDatabase) NewBatch() Batch

func (*LDBDatabase) NewIterator added in v0.9.39

func (db *LDBDatabase) NewIterator() iterator.Iterator

func (*LDBDatabase) NewIteratorWithPrefix added in v1.8.3

func (db *LDBDatabase) NewIteratorWithPrefix(prefix []byte) iterator.Iterator

NewIteratorWithPrefix returns a iterator to iterate over subset of database content with a particular prefix.

func (*LDBDatabase) Path added in v1.4.18

func (db *LDBDatabase) Path() string

Path returns the path to the database directory.

func (*LDBDatabase) Put added in v0.9.39

func (db *LDBDatabase) Put(key []byte, value []byte) error

Put puts the given key / value to the queue

type MemDatabase added in v0.9.39

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

* This is a test memory database. Do not use for any production it does not get persisted

func NewMemDatabase added in v0.9.39

func NewMemDatabase() *MemDatabase

func NewMemDatabaseWithCap added in v1.8.0

func NewMemDatabaseWithCap(size int) *MemDatabase

func (*MemDatabase) Close added in v0.9.39

func (db *MemDatabase) Close()

func (*MemDatabase) Delete added in v0.9.39

func (db *MemDatabase) Delete(key []byte) error

func (*MemDatabase) Get added in v0.9.39

func (db *MemDatabase) Get(key []byte) ([]byte, error)

func (*MemDatabase) Has added in v1.7.0

func (db *MemDatabase) Has(key []byte) (bool, error)

func (*MemDatabase) Keys added in v1.2.2

func (db *MemDatabase) Keys() [][]byte

func (*MemDatabase) Len added in v1.8.0

func (db *MemDatabase) Len() int

func (*MemDatabase) NewBatch added in v1.2.2

func (db *MemDatabase) NewBatch() Batch

func (*MemDatabase) Put added in v0.9.39

func (db *MemDatabase) Put(key []byte, value []byte) error

type Putter added in v1.7.0

type Putter interface {
	Put(key []byte, value []byte) error
}

Putter wraps the database write operation supported by both batches and regular databases.

Jump to

Keyboard shortcuts

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