Documentation ¶
Index ¶
- func Update(db *bolt.DB, transport Transport, lsn LSNGenerator, fn func(tx *Tx) error) error
- type Bucket
- func (b *Bucket) Bucket(name []byte) *Bucket
- func (b *Bucket) CreateBucket(key []byte) (*Bucket, error)
- func (b *Bucket) CreateBucketIfNotExists(key []byte) (*Bucket, error)
- func (b *Bucket) Cursor() *Cursor
- func (b *Bucket) Delete(key []byte) error
- func (b *Bucket) DeleteBucket(key []byte) error
- func (b *Bucket) ForEach(fn func(k, v []byte) error) error
- func (b *Bucket) Get(key []byte) []byte
- func (b *Bucket) NextSequence() (uint64, error)
- func (b *Bucket) Put(key []byte, value []byte) error
- func (b *Bucket) Root() uint64
- func (b *Bucket) Sequence() uint64
- func (b *Bucket) SetSequence(v uint64) error
- func (b *Bucket) Stats() bolt.BucketStats
- func (b *Bucket) Tx() *Tx
- func (b *Bucket) Writable() bool
- type Cursor
- func (c *Cursor) Bucket() *Bucket
- func (c *Cursor) Delete() error
- func (c *Cursor) First() (key []byte, value []byte)
- func (c *Cursor) Last() (key []byte, value []byte)
- func (c *Cursor) Next() (key []byte, value []byte)
- func (c *Cursor) Prev() (key []byte, value []byte)
- func (c *Cursor) Seek(seek []byte) (key []byte, value []byte)
- type Journal
- type JournalBuffer
- type JournalType
- type LSNGenerator
- type LocalTransport
- type MonotonicLSN
- type MultiTransport
- type NullTransport
- type Op
- type Transport
- type Tx
- func (tx *Tx) Bucket(name []byte) *Bucket
- func (tx *Tx) CreateBucket(name []byte) (*Bucket, error)
- func (tx *Tx) CreateBucketIfNotExists(name []byte) (*Bucket, error)
- func (tx *Tx) DeleteBucket(name []byte) error
- func (tx *Tx) ForEach(fn func([]byte, *Bucket) error) error
- func (tx *Tx) Journal() *Journal
- type W
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Bucket ¶
type Bucket struct {
// contains filtered or unexported fields
}
func (*Bucket) CreateBucketIfNotExists ¶
func (*Bucket) DeleteBucket ¶
func (*Bucket) NextSequence ¶
func (*Bucket) SetSequence ¶
func (*Bucket) Stats ¶
func (b *Bucket) Stats() bolt.BucketStats
type Journal ¶
type Journal struct { LSN int TxID int Ws []W Type JournalType // contains filtered or unexported fields }
type JournalBuffer ¶
type JournalBuffer struct {
// contains filtered or unexported fields
}
func NewJournalBuffer ¶
func NewJournalBuffer(db *bolt.DB) *JournalBuffer
func (*JournalBuffer) Flush ¶
func (jb *JournalBuffer) Flush() error
func (*JournalBuffer) WriteJournal ¶
func (jb *JournalBuffer) WriteJournal(j *Journal)
type JournalType ¶
type JournalType int
const ( JournalTypeUpdate JournalType = iota + 1 JournalTypeCommit JournalTypeRollback )
func (JournalType) String ¶
func (t JournalType) String() string
type LSNGenerator ¶
type LSNGenerator interface {
NextLSN() int
}
type LocalTransport ¶
type LocalTransport struct {
JournalBuffer *JournalBuffer
}
func (*LocalTransport) Send ¶
func (t *LocalTransport) Send(j *Journal)
type MonotonicLSN ¶
type MonotonicLSN struct {
// contains filtered or unexported fields
}
func (*MonotonicLSN) NextLSN ¶
func (l *MonotonicLSN) NextLSN() int
type MultiTransport ¶
type MultiTransport struct {
// contains filtered or unexported fields
}
func (*MultiTransport) Send ¶
func (mt *MultiTransport) Send(j *Journal)
type NullTransport ¶
type NullTransport struct{}
func (NullTransport) Send ¶
func (t NullTransport) Send(_ *Journal)
Click to show internal directories.
Click to hide internal directories.