1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| type KeyValue struct { Key []byte CreateRevision int64 ModRevision int64 Version int64 Value []byte Lease int64 }
type KVStore interface { Range(key, end []byte, limit, rangeRev int64) (*RangeResult, error)
Put(key, value []byte, lease lease.LeaseID) int64 DeleteRange(key, end []byte) (n, rev int64)
TxnBegin() TxnID TxnEnd(txnID TxnID) error TxnRange(txnID TxnID, key, end []byte, limit, rangeRev int64) (*RangeResult, error) TxnPut(txnID TxnID, key, value []byte, lease lease.LeaseID) (rev int64, err error) TxnDeleteRange(txnID TxnID, key, end []byte) (n, rev int64)
Compact(rev int64) (<-chan struct{}, error) }
|