Documentation ¶
Overview ¶
Package backend defines a standard interface for etcd's backend MVCC storage.
Index ¶
Constants ¶
View Source
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 ¶
View Source
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)
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 // SizeInUse returns the current size of the backend logically in use. // Since the backend can manage free space in a non-byte unit such as // number of pages, the returned value can be not exactly accurate in bytes. SizeInUse() int64 Defrag() error ForceCommit() Close() error }
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() }
Click to show internal directories.
Click to hide internal directories.