mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
membership: save/update the whole member information into backend
This commit is contained in:
parent
fe810e7b43
commit
a406c9fa3d
@ -311,6 +311,9 @@ func (c *RaftCluster) UpdateAttributes(id types.ID, attr Attributes) {
|
|||||||
if c.store != nil {
|
if c.store != nil {
|
||||||
mustUpdateMemberAttrInStore(c.store, m)
|
mustUpdateMemberAttrInStore(c.store, m)
|
||||||
}
|
}
|
||||||
|
if c.be != nil {
|
||||||
|
mustSaveMemberToBackend(c.be, m)
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
_, ok := c.removed[id]
|
_, ok := c.removed[id]
|
||||||
|
@ -42,7 +42,7 @@ var (
|
|||||||
|
|
||||||
func mustSaveMemberToBackend(be backend.Backend, m *Member) {
|
func mustSaveMemberToBackend(be backend.Backend, m *Member) {
|
||||||
mkey := backendMemberKey(m.ID)
|
mkey := backendMemberKey(m.ID)
|
||||||
mvalue, err := json.Marshal(m.RaftAttributes)
|
mvalue, err := json.Marshal(m)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
plog.Panicf("marshal raftAttributes should never fail: %v", err)
|
plog.Panicf("marshal raftAttributes should never fail: %v", err)
|
||||||
}
|
}
|
||||||
@ -134,7 +134,7 @@ func nodeToMember(n *store.NodeExtern) (*Member, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func backendMemberKey(id types.ID) []byte {
|
func backendMemberKey(id types.ID) []byte {
|
||||||
return []byte(path.Join(id.String(), raftAttributesSuffix))
|
return []byte(id.String())
|
||||||
}
|
}
|
||||||
|
|
||||||
func MemberStoreKey(id types.ID) string {
|
func MemberStoreKey(id types.ID) string {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user