Merge pull request #828 from watermelo/fix_etcd_reconnet
Fix: etcd cluster reconnect
diff --git a/remoting/etcdv3/facade.go b/remoting/etcdv3/facade.go
index 52b1cce..614ba9a 100644
--- a/remoting/etcdv3/facade.go
+++ b/remoting/etcdv3/facade.go
@@ -63,7 +63,7 @@
r.ClientLock().Lock()
clientName := RegistryETCDV3Client
timeout, _ := time.ParseDuration(r.GetUrl().GetParam(constant.REGISTRY_TIMEOUT_KEY, constant.DEFAULT_REG_TIMEOUT))
- endpoint := r.GetUrl().Location
+ endpoints := r.Client().endpoints
r.Client().Close()
r.SetClient(nil)
r.ClientLock().Unlock()
@@ -80,11 +80,11 @@
err = ValidateClient(
r,
WithName(clientName),
- WithEndpoints(endpoint),
+ WithEndpoints(endpoints...),
WithTimeout(timeout),
)
logger.Infof("ETCDV3ProviderRegistry.validateETCDV3Client(etcd Addr{%s}) = error{%#v}",
- endpoint, perrors.WithStack(err))
+ endpoints, perrors.WithStack(err))
if err == nil && r.RestartCallBack() {
break
}