Skip to content

Commit 86ce681

Browse files
committed
close client and metrics listeners firstly when shutting down etcd
Signed-off-by: Benjamin Wang <[email protected]>
1 parent c9e85fd commit 86ce681

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

server/embed/etcd.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -411,6 +411,16 @@ func (e *Etcd) Close() {
411411
close(e.stopc)
412412
})
413413

414+
for i := range e.Clients {
415+
if e.Clients[i] != nil {
416+
e.Clients[i].Close()
417+
}
418+
}
419+
420+
for i := range e.metricsListeners {
421+
e.metricsListeners[i].Close()
422+
}
423+
414424
// close client requests with request timeout
415425
timeout := 2 * time.Second
416426
if e.Server != nil {
@@ -428,16 +438,6 @@ func (e *Etcd) Close() {
428438
sctx.cancel()
429439
}
430440

431-
for i := range e.Clients {
432-
if e.Clients[i] != nil {
433-
e.Clients[i].Close()
434-
}
435-
}
436-
437-
for i := range e.metricsListeners {
438-
e.metricsListeners[i].Close()
439-
}
440-
441441
// shutdown tracing exporter
442442
if e.tracingExporterShutdown != nil {
443443
e.tracingExporterShutdown()

0 commit comments

Comments
 (0)