From 1c6fbcd3d092e0e36485e56b425317355e2734a5 Mon Sep 17 00:00:00 2001 From: Gyu-Ho Lee Date: Fri, 6 Oct 2017 09:50:36 -0700 Subject: [PATCH] clientv3: add debugging lines to 'retry' paths Helpful for debugging client balancer. Signed-off-by: Gyu-Ho Lee --- clientv3/balancer.go | 3 +++ clientv3/retry.go | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/clientv3/balancer.go b/clientv3/balancer.go index b0c420422..deb0df1e5 100644 --- a/clientv3/balancer.go +++ b/clientv3/balancer.go @@ -303,6 +303,9 @@ func (b *simpleBalancer) up(addr grpc.Address) (func(error), bool) { return func(err error) {}, false } if b.pinAddr != "" { + if logger.V(4) { + logger.Infof("clientv3/balancer: %s is up but not pinned (already pinned %s)", addr.Addr, b.pinAddr) + } return func(err error) {}, false } // notify waiting Get()s and pin first connected address diff --git a/clientv3/retry.go b/clientv3/retry.go index e4d1206f7..ddf0ea3c8 100644 --- a/clientv3/retry.go +++ b/clientv3/retry.go @@ -62,6 +62,9 @@ func (c *Client) newRetryWrapper(isStop retryStopErrFunc) retryRpcFunc { if err == nil { return nil } + if logger.V(4) { + logger.Infof("clientv3/retry: retry for error %v", err) + } notify := c.balancer.ConnectNotify() if s, ok := status.FromError(err); ok && s.Code() == codes.Unavailable { c.balancer.next() @@ -87,7 +90,9 @@ func (c *Client) newAuthRetryWrapper() retryRpcFunc { if err == nil { return nil } - + if logger.V(4) { + logger.Infof("clientv3/auth-retry: retry for error %v", err) + } // always stop retry on etcd errors other than invalid auth token if rpctypes.Error(err) == rpctypes.ErrInvalidAuthToken { gterr := c.getToken(rpcCtx) @@ -96,7 +101,6 @@ func (c *Client) newAuthRetryWrapper() retryRpcFunc { } continue } - return err } }