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 Defrag() error ForceCommit() Close() error }
func NewDefaultBackend ¶
type BatchTx ¶
type BatchTx interface { Lock() Unlock() // 创建bucket UnsafeCreateBucket(name []byte) // 向指定bucket中添加键值对数据 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.