etcdserver: const XXXDir -> StoreXXXPrefix

and code clean
This commit is contained in:
Yicheng Qin 2014-10-21 11:47:03 -07:00
parent 2ff3cac653
commit e2b6a4fc4c
5 changed files with 21 additions and 17 deletions

View File

@ -77,7 +77,7 @@ func (s *clusterStore) Add(m Member) {
func (s *clusterStore) Get() Cluster {
c := NewCluster()
c.id = s.id
e, err := s.Store.Get(membersDir, true, true)
e, err := s.Store.Get(storeMembersPrefix, true, true)
if err != nil {
if v, ok := err.(*etcdErr.Error); ok && v.ErrorCode == etcdErr.EcodeKeyNotFound {
return *c

View File

@ -17,6 +17,7 @@
package etcdserver
import (
"path"
"reflect"
"testing"
"time"
@ -34,7 +35,7 @@ func TestClusterStoreAdd(t *testing.T) {
{
name: "Create",
params: []interface{}{
membersDir + "/1/raftAttributes",
path.Join(storeMembersPrefix, "1", "raftAttributes"),
false,
`{"PeerURLs":null}`,
false,
@ -44,7 +45,7 @@ func TestClusterStoreAdd(t *testing.T) {
{
name: "Create",
params: []interface{}{
membersDir + "/1/attributes",
path.Join(storeMembersPrefix, "1", "attributes"),
false,
`{"Name":"node1","ClientURLs":null}`,
false,
@ -113,7 +114,7 @@ func TestClusterStoreDelete(t *testing.T) {
cs.Add(newTestMember(1, nil, "node1", nil))
cs.Remove(1)
wdeletes := []string{membersDir + "/1"}
wdeletes := []string{path.Join(storeMembersPrefix, "1")}
if !reflect.DeepEqual(st.deletes, wdeletes) {
t.Errorf("deletes = %v, want %v", st.deletes, wdeletes)
}

View File

@ -24,6 +24,7 @@ import (
"log"
"net/http"
"net/url"
"path"
"strconv"
"strings"
"time"
@ -113,7 +114,7 @@ func (h serverHandler) serveKeys(w http.ResponseWriter, r *http.Request) {
return
}
rr.Path = etcdserver.KeysDir + rr.Path
rr.Path = path.Join(etcdserver.StoreKeysPrefix, rr.Path)
resp, err := h.server.Do(ctx, rr)
if err != nil {
writeError(w, err)
@ -122,7 +123,7 @@ func (h serverHandler) serveKeys(w http.ResponseWriter, r *http.Request) {
switch {
case resp.Event != nil:
ev := trimEventPrefix(resp.Event, etcdserver.KeysDir)
ev := trimEventPrefix(resp.Event, etcdserver.StoreKeysPrefix)
if err := writeEvent(w, ev, h.timer); err != nil {
// Should never be reached
log.Printf("error writing event: %v", err)
@ -478,7 +479,7 @@ func handleKeyWatch(ctx context.Context, w http.ResponseWriter, wa store.Watcher
// send to the client in time. Then we simply end streaming.
return
}
ev = trimEventPrefix(ev, etcdserver.KeysDir)
ev = trimEventPrefix(ev, etcdserver.StoreKeysPrefix)
if err := json.NewEncoder(w).Encode(ev); err != nil {
// Should never be reached
log.Printf("error writing event: %v\n", err)
@ -506,22 +507,22 @@ func allowMethod(w http.ResponseWriter, m string, ms ...string) bool {
return false
}
func trimEventPrefix(ev *store.Event, pre string) *store.Event {
func trimEventPrefix(ev *store.Event, prefix string) *store.Event {
if ev == nil {
return nil
}
ev.Node = trimNodeExternPrefix(ev.Node, pre)
ev.PrevNode = trimNodeExternPrefix(ev.PrevNode, pre)
ev.Node = trimNodeExternPrefix(ev.Node, prefix)
ev.PrevNode = trimNodeExternPrefix(ev.PrevNode, prefix)
return ev
}
func trimNodeExternPrefix(n *store.NodeExtern, pre string) *store.NodeExtern {
func trimNodeExternPrefix(n *store.NodeExtern, prefix string) *store.NodeExtern {
if n == nil {
return nil
}
n.Key = strings.TrimPrefix(n.Key, pre)
n.Key = strings.TrimPrefix(n.Key, prefix)
for _, nn := range n.Nodes {
nn = trimNodeExternPrefix(nn, pre)
nn = trimNodeExternPrefix(nn, prefix)
}
return n
}

View File

@ -69,7 +69,7 @@ func newMember(name string, peerURLs types.URLs, now *time.Time) *Member {
}
func (m Member) storeKey() string {
return path.Join(membersDir, idAsHex(m.ID))
return path.Join(storeMembersPrefix, idAsHex(m.ID))
}
func parseMemberID(key string) uint64 {

View File

@ -22,6 +22,7 @@ import (
"log"
"math/rand"
"os"
"path"
"strconv"
"sync/atomic"
"time"
@ -48,9 +49,8 @@ const (
// TODO: calculate based on heartbeat interval
defaultPublishRetryInterval = 5 * time.Second
AdminDir = "/0"
membersDir = AdminDir + "/members"
KeysDir = "/1"
StoreAdminPrefix = "/0"
StoreKeysPrefix = "/1"
)
var (
@ -59,6 +59,8 @@ var (
ErrIDRemoved = errors.New("etcdserver: ID removed")
ErrIDExists = errors.New("etcdserver: ID exists")
ErrIDNotFound = errors.New("etcdserver: ID not found")
storeMembersPrefix = path.Join(StoreAdminPrefix, "members")
)
func init() {