From 9f1d6ca1c9033bce38ea5e23e6d692b955cba18c Mon Sep 17 00:00:00 2001 From: Nima Yahyazadeh Date: Mon, 17 Jun 2019 11:45:25 -0400 Subject: [PATCH] Raft HTTP: fix pause/resume race condition (cherry picked from commit b1812a410fbca6fb77bf95b496408c7b75d0a370) --- rafthttp/transport.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/rafthttp/transport.go b/rafthttp/transport.go index 16e854c8a..9ec765086 100644 --- a/rafthttp/transport.go +++ b/rafthttp/transport.go @@ -372,12 +372,16 @@ type Pausable interface { } func (t *Transport) Pause() { + t.mu.RLock() + defer t.mu.RUnlock() for _, p := range t.peers { p.(Pausable).Pause() } } func (t *Transport) Resume() { + t.mu.RLock() + defer t.mu.RUnlock() for _, p := range t.peers { p.(Pausable).Resume() }