package backend
import "github.com/coreos/etcd/mvcc/backend"
Package backend defines a standard interface for etcd's backend MVCC storage.
Index ¶
- Constants
- Variables
- func NewDefaultTmpBackend() (*backend, string)
- func NewTmpBackend(batchInterval time.Duration, batchLimit int) (*backend, string)
- type Backend
- func New(path string, d time.Duration, limit int) Backend
- func NewDefaultBackend(path string) Backend
- type BatchTx
- type IgnoreKey
- type Snapshot
Constants ¶
const ( // DefaultQuotaBytes is the number of bytes the backend Size may // consume before exceeding the space quota. DefaultQuotaBytes = int64(2 * 1024 * 1024 * 1024) // 2GB // MaxQuotaBytes is the maximum number of bytes suggested for a backend // quota. A larger quota may lead to degraded performance. MaxQuotaBytes = int64(8 * 1024 * 1024 * 1024) // 8GB )
Variables ¶
var ( // InitialMmapSize is the initial size of the mmapped region. Setting this larger than // the potential max db size can prevent writer from blocking reader. // This only works for linux. InitialMmapSize = int64(10 * 1024 * 1024 * 1024) )
Functions ¶
func NewDefaultTmpBackend ¶
func NewDefaultTmpBackend() (*backend, string)
func NewTmpBackend ¶
NewTmpBackend creates a backend implementation for testing.
Types ¶
type Backend ¶
type Backend interface { BatchTx() BatchTx Snapshot() Snapshot Hash(ignores map[IgnoreKey]struct{}) (uint32, error) // Size returns the current size of the backend. Size() int64 Defrag() error ForceCommit() Close() error }
func New ¶
func NewDefaultBackend ¶
type BatchTx ¶
type BatchTx interface { Lock() Unlock() UnsafeCreateBucket(name []byte) UnsafePut(bucketName []byte, key []byte, value []byte) UnsafeSeqPut(bucketName []byte, key []byte, value []byte) UnsafeRange(bucketName []byte, key, endKey []byte, limit int64) (keys [][]byte, vals [][]byte) UnsafeDelete(bucketName []byte, key []byte) UnsafeForEach(bucketName []byte, visitor func(k, v []byte) error) error Commit() CommitAndStop() }
type IgnoreKey ¶
type Snapshot ¶
type Snapshot interface { // Size gets the size of the snapshot. Size() int64 // WriteTo writes the snapshot into the given writer. WriteTo(w io.Writer) (n int64, err error) // Close closes the snapshot. Close() error }
Source Files ¶
backend.go batch_tx.go boltoption_linux.go doc.go metrics.go
- Version
- v3.0.5+incompatible
- Published
- Aug 19, 2016
- Platform
- linux/amd64
- Imports
- 14 packages
- Last checked
- 1 hour ago –
Tools for package owners.