Versions in this module Expand all Collapse all v0 v0.4.0 Jun 23, 2016 v0.3.0 Mar 16, 2016 Changes in this version + const DefaultSnapCount + const StoreClusterPrefix + const StoreKeysPrefix + var ErrCanceled = errors.New("etcdserver: request cancelled") + var ErrIDExists = errors.New("etcdserver: ID exists") + var ErrIDNotFound = errors.New("etcdserver: ID not found") + var ErrIDRemoved = errors.New("etcdserver: ID removed") + var ErrPeerURLexists = errors.New("etcdserver: peerURL exists") + var ErrStopped = errors.New("etcdserver: server stopped") + var ErrTimeout = errors.New("etcdserver: request timed out") + var ErrTimeoutDueToConnectionLost = errors.New("etcdserver: request timed out, possibly due to connection lost") + var ErrTimeoutDueToLeaderFail = errors.New("etcdserver: request timed out, possibly due to previous leader failure") + var ErrUnknownMethod = errors.New("etcdserver: unknown method") + func GetClusterFromRemotePeers(urls []string, tr *http.Transport) (*cluster, error) + func MemberAttributesStorePath(id types.ID) string + func MustDetectDowngrade(cv *semver.Version) + func ValidateClusterAndAssignIDs(local *cluster, existing *cluster) error + type Attributes struct + ClientURLs []string + Name string + type Cluster interface + ClientURLs func() []string + ID func() types.ID + IsIDRemoved func(id types.ID) bool + Member func(id types.ID) *Member + Members func() []*Member + Version func() *semver.Version + type DiscoveryError struct + Err error + Op string + func (e DiscoveryError) Error() string + type EtcdServer struct + SyncTicker <-chan time.Time + func NewServer(cfg *ServerConfig) (*EtcdServer, error) + func (s *EtcdServer) AddMember(ctx context.Context, memb Member) error + func (s *EtcdServer) Cluster() Cluster + func (s *EtcdServer) ClusterVersion() *semver.Version + func (s *EtcdServer) Do(ctx context.Context, r pb.Request) (Response, error) + func (s *EtcdServer) ID() types.ID + func (s *EtcdServer) Index() uint64 + func (s *EtcdServer) IsIDRemoved(id uint64) bool + func (s *EtcdServer) Lead() uint64 + func (s *EtcdServer) Leader() types.ID + func (s *EtcdServer) LeaderStats() []byte + func (s *EtcdServer) PauseSending() + func (s *EtcdServer) Process(ctx context.Context, m raftpb.Message) error + func (s *EtcdServer) RaftHandler() http.Handler + func (s *EtcdServer) RemoveMember(ctx context.Context, id uint64) error + func (s *EtcdServer) ReportSnapshot(id uint64, status raft.SnapshotStatus) + func (s *EtcdServer) ReportUnreachable(id uint64) + func (s *EtcdServer) ResumeSending() + func (s *EtcdServer) SelfStats() []byte + func (s *EtcdServer) Start() + func (s *EtcdServer) Stop() + func (s *EtcdServer) StopNotify() <-chan struct{} + func (s *EtcdServer) StoreStats() []byte + func (s *EtcdServer) Term() uint64 + func (s *EtcdServer) UpdateMember(ctx context.Context, memb Member) error + func (s *EtcdServer) V3DemoDo(ctx context.Context, r pb.InternalRaftRequest) proto.Message + type Member struct + ID types.ID + func NewMember(name string, peerURLs types.URLs, clusterName string, now *time.Time) *Member + func (m *Member) Clone() *Member + func (m *Member) PickPeerURL() string + type MembersByID []*Member + func (ms MembersByID) Len() int + func (ms MembersByID) Less(i, j int) bool + func (ms MembersByID) Swap(i, j int) + type MembersByPeerURLs []*Member + func (ms MembersByPeerURLs) Len() int + func (ms MembersByPeerURLs) Less(i, j int) bool + func (ms MembersByPeerURLs) Swap(i, j int) + type RaftAttributes struct + PeerURLs []string + type RaftTimer interface + Index func() uint64 + Term func() uint64 + type Response struct + Event *store.Event + Watcher store.Watcher + type Server interface + AddMember func(ctx context.Context, memb Member) error + ClusterVersion func() *semver.Version + Do func(ctx context.Context, r pb.Request) (Response, error) + ID func() types.ID + Leader func() types.ID + Process func(ctx context.Context, m raftpb.Message) error + RemoveMember func(ctx context.Context, id uint64) error + Start func() + Stop func() + UpdateMember func(ctx context.Context, updateMemb Member) error + type ServerConfig struct + ClientURLs types.URLs + DataDir string + DedicatedWALDir string + DiscoveryProxy string + DiscoveryURL string + ElectionTicks int + ForceNewCluster bool + InitialClusterToken string + InitialPeerURLsMap types.URLsMap + MaxSnapFiles uint + MaxWALFiles uint + Name string + NewCluster bool + PeerURLs types.URLs + SnapCount uint64 + TickMs uint + Transport *http.Transport + V3demo bool + func (c *ServerConfig) MemberDir() string + func (c *ServerConfig) Print() + func (c *ServerConfig) PrintWithInitial() + func (c *ServerConfig) ReqTimeout() time.Duration + func (c *ServerConfig) ShouldDiscover() bool + func (c *ServerConfig) SnapDir() string + func (c *ServerConfig) VerifyBootstrap() error + func (c *ServerConfig) VerifyJoinExisting() error + func (c *ServerConfig) WALDir() string + type Storage interface + Close func() error + Save func(st raftpb.HardState, ents []raftpb.Entry) error + SaveSnap func(snap raftpb.Snapshot) error + func NewStorage(w *wal.WAL, s *snap.Snapshotter) Storage + type V3DemoServer interface + V3DemoDo func(ctx context.Context, r pb.InternalRaftRequest) proto.Message