mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
etcdserver/api/v3rpc: "MemberList" never return non-empty ClientURLs
Signed-off-by: Gyuho Lee <leegyuho@amazon.com> cr https://code.amazon.com/reviews/CR-29712724
This commit is contained in:
parent
18dfb9cca3
commit
0372cfc7ab
@ -16,6 +16,8 @@ package v3rpc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"go.etcd.io/etcd/etcdserver"
|
||||
@ -89,6 +91,19 @@ func (cs *ClusterServer) MemberUpdate(ctx context.Context, r *pb.MemberUpdateReq
|
||||
|
||||
func (cs *ClusterServer) MemberList(ctx context.Context, r *pb.MemberListRequest) (*pb.MemberListResponse, error) {
|
||||
membs := membersToProtoMembers(cs.cluster.Members())
|
||||
for idx := range membs {
|
||||
mv := membs[idx]
|
||||
if len(mv.ClientURLs) == 0 {
|
||||
mv.ClientURLs = []string{"invalid"}
|
||||
fmt.Fprintf(os.Stderr, "[EKS-DEBUG] member %x (name %q) has empty ClientURLs, adding placeholder value to prevent ClientURLs[0] panic [ClientURLs %q, PeerURLs %q]",
|
||||
mv.ID,
|
||||
mv.Name,
|
||||
mv.ClientURLs,
|
||||
mv.PeerURLs,
|
||||
)
|
||||
}
|
||||
membs[idx] = mv
|
||||
}
|
||||
return &pb.MemberListResponse{Header: cs.header(), Members: membs}, nil
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user