Ver código fonte

client: move lock so MembersAPI.List doesn't deadlock

Brian Waldon 11 anos atrás
pai
commit
ae062a0825
1 arquivos alterados com 3 adições e 3 exclusões
  1. 3 3
      client/client.go

+ 3 - 3
client/client.go

@@ -223,15 +223,15 @@ func (c *httpClusterClient) Endpoints() []string {
 }
 
 func (c *httpClusterClient) Sync(ctx context.Context) error {
-	c.Lock()
-	defer c.Unlock()
-
 	mAPI := NewMembersAPI(c)
 	ms, err := mAPI.List(ctx)
 	if err != nil {
 		return err
 	}
 
+	c.Lock()
+	defer c.Unlock()
+
 	eps := make([]string, 0)
 	for _, m := range ms {
 		eps = append(eps, m.ClientURLs...)