From 12f6b8e72d44362194a55d450e4635e8e4af21a2 Mon Sep 17 00:00:00 2001 From: Anthony Romano Date: Mon, 25 Jan 2016 19:44:18 -0800 Subject: [PATCH] etcdserver: complete stopWithDelay on server shutdown Was causing goroutine leaks on my machine. --- etcdserver/server.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/etcdserver/server.go b/etcdserver/server.go index 18a0b79f8..e320984a8 100644 --- a/etcdserver/server.go +++ b/etcdserver/server.go @@ -704,7 +704,10 @@ func (s *EtcdServer) Stop() { } func (s *EtcdServer) stopWithDelay(d time.Duration, err error) { - time.Sleep(d) + select { + case <-time.After(d): + case <-s.done: + } select { case s.errorc <- err: default: