@@ -421,29 +421,19 @@ func (c *Client) addMember(name string, peerAddrs string, isLearner bool) ([]Mem
421
421
var (
422
422
lastError error
423
423
respMembers []* etcdserverpb.Member
424
- learnerID uint64
425
424
resp * clientv3.MemberAddResponse
426
425
)
427
426
err = wait .PollUntilContextTimeout (context .Background (), constants .EtcdAPICallRetryInterval , constants .EtcdAPICallTimeout ,
428
427
true , func (_ context.Context ) (bool , error ) {
429
428
ctx , cancel := context .WithTimeout (context .Background (), etcdTimeout )
430
429
defer cancel ()
431
430
if isLearner {
432
- // if learnerID is set, it means the etcd member is already added successfully.
433
- if learnerID == 0 {
434
- klog .V (1 ).Info ("[etcd] Adding etcd member as learner" )
435
- resp , err = cli .MemberAddAsLearner (ctx , []string {peerAddrs })
436
- if err != nil {
437
- lastError = err
438
- return false , nil
439
- }
440
- learnerID = resp .Member .ID
441
- }
442
- respMembers = resp .Members
443
- return true , nil
431
+ klog .V (1 ).Infof ("[etcd] Adding etcd member %q as learner" , peerAddrs )
432
+ resp , err = cli .MemberAddAsLearner (ctx , []string {peerAddrs })
433
+ } else {
434
+ klog .V (1 ).Infof ("[etcd] Adding etcd member %q" , peerAddrs )
435
+ resp , err = cli .MemberAdd (ctx , []string {peerAddrs })
444
436
}
445
-
446
- resp , err = cli .MemberAdd (ctx , []string {peerAddrs })
447
437
if err == nil {
448
438
respMembers = resp .Members
449
439
return true , nil
0 commit comments