membership: retry for 30s on advertise url check
parent
29c30b2387
commit
26a3e9a740
|
@ -24,6 +24,9 @@ import (
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"golang.org/x/net/context"
|
||||||
|
|
||||||
"github.com/coreos/etcd/mvcc/backend"
|
"github.com/coreos/etcd/mvcc/backend"
|
||||||
"github.com/coreos/etcd/pkg/netutil"
|
"github.com/coreos/etcd/pkg/netutil"
|
||||||
|
@ -484,8 +487,10 @@ func ValidateClusterAndAssignIDs(local *RaftCluster, existing *RaftCluster) erro
|
||||||
sort.Sort(MembersByPeerURLs(ems))
|
sort.Sort(MembersByPeerURLs(ems))
|
||||||
sort.Sort(MembersByPeerURLs(lms))
|
sort.Sort(MembersByPeerURLs(lms))
|
||||||
|
|
||||||
|
ctx, cancel := context.WithTimeout(context.TODO(), 30*time.Second)
|
||||||
|
defer cancel()
|
||||||
for i := range ems {
|
for i := range ems {
|
||||||
if !netutil.URLStringsEqual(ems[i].PeerURLs, lms[i].PeerURLs) {
|
if !netutil.URLStringsEqual(ctx, ems[i].PeerURLs, lms[i].PeerURLs) {
|
||||||
return fmt.Errorf("unmatched member while checking PeerURLs")
|
return fmt.Errorf("unmatched member while checking PeerURLs")
|
||||||
}
|
}
|
||||||
lms[i].ID = ems[i].ID
|
lms[i].ID = ems[i].ID
|
||||||
|
|
Loading…
Reference in New Issue