mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
client: move lock so MembersAPI.List doesn't deadlock
This commit is contained in:
parent
83930ac113
commit
ae062a0825
@ -223,15 +223,15 @@ func (c *httpClusterClient) Endpoints() []string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *httpClusterClient) Sync(ctx context.Context) error {
|
func (c *httpClusterClient) Sync(ctx context.Context) error {
|
||||||
c.Lock()
|
|
||||||
defer c.Unlock()
|
|
||||||
|
|
||||||
mAPI := NewMembersAPI(c)
|
mAPI := NewMembersAPI(c)
|
||||||
ms, err := mAPI.List(ctx)
|
ms, err := mAPI.List(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
c.Lock()
|
||||||
|
defer c.Unlock()
|
||||||
|
|
||||||
eps := make([]string, 0)
|
eps := make([]string, 0)
|
||||||
for _, m := range ms {
|
for _, m := range ms {
|
||||||
eps = append(eps, m.ClientURLs...)
|
eps = append(eps, m.ClientURLs...)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user