Browse Source

Use newbe instead of s.be to avoid potential race

`s.cluster.SetBackend(s.be)` is not in critical section. Using `newbe` instead of `s.be` can avoid potential data race.
lzhfromustc 6 years ago
parent
commit
d35f6647bc
1 changed files with 1 additions and 1 deletions
  1. 1 1
      etcdserver/server.go

+ 1 - 1
etcdserver/server.go

@@ -1291,7 +1291,7 @@ func (s *EtcdServer) applySnapshot(ep *etcdProgress, apply *apply) {
 		plog.Info("finished recovering store v2")
 	}
 
-	s.cluster.SetBackend(s.be)
+	s.cluster.SetBackend(newbe)
 
 	if lg != nil {
 		lg.Info("restoring cluster configuration")