Documentation ¶
Index ¶
- Variables
- func NewInmem(conf map[string]string, logger log.Logger) (physical.Backend, error)
- func NewInmemHA(_ map[string]string, logger log.Logger) (physical.Backend, error)
- func NewTransactionalInmem(conf map[string]string, logger log.Logger) (physical.Backend, error)
- func NewTransactionalInmemHA(_ map[string]string, logger log.Logger) (physical.Backend, error)
- type InmemBackend
- func (i *InmemBackend) Delete(ctx context.Context, key string) error
- func (i *InmemBackend) DeleteInternal(ctx context.Context, key string) error
- func (i *InmemBackend) FailDelete(fail bool)
- func (i *InmemBackend) FailGet(fail bool)
- func (i *InmemBackend) FailGetInTxn(fail bool)
- func (i *InmemBackend) FailList(fail bool)
- func (i *InmemBackend) FailPut(fail bool)
- func (i *InmemBackend) Get(ctx context.Context, key string) (*physical.Entry, error)
- func (i *InmemBackend) GetInternal(ctx context.Context, key string) (*physical.Entry, error)
- func (i *InmemBackend) List(ctx context.Context, prefix string) ([]string, error)
- func (i *InmemBackend) ListInternal(ctx context.Context, prefix string) ([]string, error)
- func (i *InmemBackend) Put(ctx context.Context, entry *physical.Entry) error
- func (i *InmemBackend) PutInternal(ctx context.Context, entry *physical.Entry) error
- type InmemHABackend
- type InmemLock
- type TransactionalInmemBackend
- type TransactionalInmemHABackend
Constants ¶
This section is empty.
Variables ¶
var ( PutDisabledError = errors.New("put operations disabled in inmem backend") GetDisabledError = errors.New("get operations disabled in inmem backend") DeleteDisabledError = errors.New("delete operations disabled in inmem backend") ListDisabledError = errors.New("list operations disabled in inmem backend") GetInTxnDisabledError = errors.New("get operations inside transactions are disabled in inmem backend") )
Functions ¶
func NewInmemHA ¶
NewInmemHA constructs a new in-memory HA backend. This is only for testing.
func NewTransactionalInmem ¶
Basically for now just creates a permit pool of size 1 so only one operation can run at a time
Types ¶
type InmemBackend ¶
InmemBackend is an in-memory only physical backend. It is useful for testing and development situations where the data is not expected to be durable.
func (*InmemBackend) Delete ¶
func (i *InmemBackend) Delete(ctx context.Context, key string) error
Delete is used to permanently delete an entry
func (*InmemBackend) DeleteInternal ¶
func (i *InmemBackend) DeleteInternal(ctx context.Context, key string) error
func (*InmemBackend) FailDelete ¶
func (i *InmemBackend) FailDelete(fail bool)
func (*InmemBackend) FailGet ¶
func (i *InmemBackend) FailGet(fail bool)
func (*InmemBackend) FailGetInTxn ¶ added in v0.6.0
func (i *InmemBackend) FailGetInTxn(fail bool)
func (*InmemBackend) FailList ¶
func (i *InmemBackend) FailList(fail bool)
func (*InmemBackend) FailPut ¶
func (i *InmemBackend) FailPut(fail bool)
func (*InmemBackend) GetInternal ¶
func (*InmemBackend) List ¶
List is used to list all the keys under a given prefix, up to the next prefix.
func (*InmemBackend) ListInternal ¶
func (*InmemBackend) PutInternal ¶
type InmemHABackend ¶
func (*InmemHABackend) HAEnabled ¶
func (i *InmemHABackend) HAEnabled() bool
HAEnabled indicates whether the HA functionality should be exposed. Currently always returns true.
func (*InmemHABackend) LockMapSize ¶
func (i *InmemHABackend) LockMapSize() int
LockMapSize is used in some tests to determine whether this backend has ever been used for HA purposes rather than simply for storage
type InmemLock ¶
type InmemLock struct {
// contains filtered or unexported fields
}
InmemLock is an in-memory Lock implementation for the HABackend
type TransactionalInmemBackend ¶
type TransactionalInmemBackend struct {
InmemBackend
}
func (*TransactionalInmemBackend) Transaction ¶
func (t *TransactionalInmemBackend) Transaction(ctx context.Context, txns []*physical.TxnEntry) error
Transaction implements the transaction interface
type TransactionalInmemHABackend ¶
type TransactionalInmemHABackend struct { physical.Transactional InmemHABackend }