From 7023e5d2fbab3bbdd67faf05a388d77ddc71a319 Mon Sep 17 00:00:00 2001 From: fangdingjun Date: Thu, 22 Nov 2018 14:42:27 +0800 Subject: [PATCH] sd/etcdv3: serve the keepalive response channel read and discard keepalive response, make etcd library not to complain fix #799 --- sd/etcdv3/client.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sd/etcdv3/client.go b/sd/etcdv3/client.go index 1ae37ff12..2c1f49681 100644 --- a/sd/etcdv3/client.go +++ b/sd/etcdv3/client.go @@ -204,6 +204,18 @@ func (c *client) Register(s Service) error { return err } + // discard the keepalive response, make etcd library not to complain + // fix bug #799 + go func() { + for { + select { + case <-c.hbch: + case <-c.ctx.Done(): + return + } + } + }() + return nil }