Documentation
¶
Index ¶
- func NewLockerBackend(ns store.Namespace, ...) locker.Backend
- type Command
- type FSM
- type FSMHandleFunc
- type KV
- type Locker
- type LockerBackendWrapper
- type LogPayload
- type Raft
- type RaftConfig
- type RedQueen
- type Server
- func (s *Server) AppendCluster(_ context.Context, req *serverpb.AppendClusterRequest) (*serverpb.AppendClusterResponse, error)
- func (s *Server) Close() (err error)
- func (s *Server) Delete(ctx context.Context, req *serverpb.DeleteRequest) (*serverpb.DeleteResponse, error)
- func (s *Server) Get(_ context.Context, req *serverpb.GetRequest) (*serverpb.GetResponse, error)
- func (s *Server) LeaderMonitor(_ *serverpb.LeaderMonitorRequest, stream serverpb.RedQueen_LeaderMonitorServer) error
- func (s *Server) ListenServer() error
- func (s *Server) Lock(_ context.Context, req *serverpb.LockRequest) (*serverpb.LockResponse, error)
- func (s *Server) RaftState(_ context.Context, _ *serverpb.RaftStateRequest) (*serverpb.RaftStateResponse, error)
- func (s *Server) Set(ctx context.Context, req *serverpb.SetRequest) (*serverpb.SetResponse, error)
- func (s *Server) TryLock(_ context.Context, req *serverpb.TryLockRequest) (*serverpb.TryLockResponse, error)
- func (s *Server) TrySet(ctx context.Context, req *serverpb.SetRequest) (*serverpb.SetResponse, error)
- func (s *Server) Unlock(_ context.Context, req *serverpb.UnlockRequest) (*serverpb.UnlockResponse, error)
- func (s *Server) Watch(req *serverpb.WatchRequest, stream serverpb.KV_WatchServer) error
- type Snapshot
- type StableStore
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewLockerBackend ¶
Types ¶
type FSMHandleFunc ¶
type FSMHandleFunc func(*serverpb.RaftLogPayload) error
type KV ¶
type KV interface {
Set(context.Context, *serverpb.SetRequest) (*serverpb.SetResponse, error)
Get(context.Context, *serverpb.GetRequest) (*serverpb.GetResponse, error)
TrySet(context.Context, *serverpb.SetRequest) (*serverpb.SetResponse, error)
Delete(context.Context, *serverpb.DeleteRequest) (*serverpb.DeleteResponse, error)
Watch(*serverpb.WatchRequest, serverpb.KV_WatchServer) error
}
type Locker ¶
type Locker interface {
Lock(context.Context, *serverpb.LockRequest) (*serverpb.LockResponse, error)
Unlock(context.Context, *serverpb.UnlockRequest) (*serverpb.UnlockResponse, error)
TryLock(context.Context, *serverpb.TryLockRequest) (*serverpb.TryLockResponse, error)
}
type LockerBackendWrapper ¶
type LockerBackendWrapper struct {
// contains filtered or unexported fields
}
func (LockerBackendWrapper) Del ¶
func (w LockerBackendWrapper) Del(key []byte) error
func (LockerBackendWrapper) Get ¶
func (w LockerBackendWrapper) Get(key []byte) (*store.Value, error)
func (LockerBackendWrapper) TrySetWithTTL ¶
func (w LockerBackendWrapper) TrySetWithTTL(key, value []byte, ttl uint32) error
func (LockerBackendWrapper) Watch ¶
func (w LockerBackendWrapper) Watch(key []byte) (store.WatcherNotify, error)
type LogPayload ¶
type LogPayload struct {
Command Command `json:"command" msgpack:"cmd"`
TTL *uint32 `json:"ttl,omitempty" msgpack:"ttl,omitempty"`
Namespace *string `json:"namespace,omitempty" msgpack:"ns,omitempty"`
Key []byte `json:"key,omitempty" msgpack:"k,omitempty"`
Value []byte `json:"value,omitempty" msgpack:"v,omitempty"`
}
type Raft ¶
func (*Raft) AddCluster ¶
type RaftConfig ¶
type RedQueen ¶
type RedQueen interface {
AppendCluster(context.Context, *serverpb.AppendClusterRequest) (*serverpb.AppendClusterResponse, error)
LeaderMonitor(*serverpb.LeaderMonitorRequest, serverpb.RedQueen_LeaderMonitorServer) error
RaftState(context.Context, *serverpb.RaftStateRequest) (*serverpb.RaftStateResponse, error)
}
type Server ¶
type Server struct {
serverpb.UnimplementedKVServer
serverpb.UnimplementedLockerServer
serverpb.UnimplementedRedQueenServer
// contains filtered or unexported fields
}
func (*Server) AppendCluster ¶
func (s *Server) AppendCluster(_ context.Context, req *serverpb.AppendClusterRequest) (*serverpb.AppendClusterResponse, error)
func (*Server) Delete ¶
func (s *Server) Delete(ctx context.Context, req *serverpb.DeleteRequest) (*serverpb.DeleteResponse, error)
func (*Server) Get ¶
func (s *Server) Get(_ context.Context, req *serverpb.GetRequest) (*serverpb.GetResponse, error)
func (*Server) LeaderMonitor ¶
func (s *Server) LeaderMonitor(_ *serverpb.LeaderMonitorRequest, stream serverpb.RedQueen_LeaderMonitorServer) error
func (*Server) ListenServer ¶
func (*Server) Lock ¶
func (s *Server) Lock(_ context.Context, req *serverpb.LockRequest) (*serverpb.LockResponse, error)
func (*Server) RaftState ¶
func (s *Server) RaftState(_ context.Context, _ *serverpb.RaftStateRequest) (*serverpb.RaftStateResponse, error)
func (*Server) Set ¶
func (s *Server) Set(ctx context.Context, req *serverpb.SetRequest) (*serverpb.SetResponse, error)
func (*Server) TryLock ¶
func (s *Server) TryLock(_ context.Context, req *serverpb.TryLockRequest) (*serverpb.TryLockResponse, error)
func (*Server) TrySet ¶
func (s *Server) TrySet(ctx context.Context, req *serverpb.SetRequest) (*serverpb.SetResponse, error)
func (*Server) Unlock ¶
func (s *Server) Unlock(_ context.Context, req *serverpb.UnlockRequest) (*serverpb.UnlockResponse, error)
func (*Server) Watch ¶
func (s *Server) Watch(req *serverpb.WatchRequest, stream serverpb.KV_WatchServer) error
type StableStore ¶
type StableStore struct {
// contains filtered or unexported fields
}
func NewStableStore ¶
func NewStableStore(s store.Store) (*StableStore, error)
func (*StableStore) Get ¶
func (s *StableStore) Get(key []byte) ([]byte, error)
Get returns the value for key, or an empty byte slice if key was not found.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.