From 471522cf87e47fb21902580c375a5c96c7f204fc Mon Sep 17 00:00:00 2001 From: Joseph Phillips Date: Wed, 5 Jan 2022 09:58:44 +0100 Subject: [PATCH] Ensures that we copy the value of APIInfo into a new reference in order to avoid testing races in the raftlease client tests. --- api/raftlease/client.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/api/raftlease/client.go b/api/raftlease/client.go index a60f0bb6180..5693c4cef49 100644 --- a/api/raftlease/client.go +++ b/api/raftlease/client.go @@ -608,9 +608,8 @@ func (r *remote) loop() error { func (r *remote) connect() bool { stop := make(chan struct{}) - var info *api.Info r.mutex.Lock() - info = r.config.APIInfo + info := *r.config.APIInfo r.stopConnecting = stop r.mutex.Unlock() @@ -621,7 +620,7 @@ func (r *remote) connect() bool { _ = retry.Call(retry.CallArgs{ Func: func() error { r.config.Logger.Debugf("open api to %v", address) - conn, err := api.Open(info, api.DialOpts{ + conn, err := api.Open(&info, api.DialOpts{ DialAddressInterval: 50 * time.Millisecond, Timeout: 10 * time.Minute, RetryDelay: 2 * time.Second,