rafthttp: add remote in pipeline and snapshot handler when corresponding peer or remote do not exist

Fixes: #8506
release-3.3
blueblue 2017-09-12 18:38:18 +08:00
parent 2bb893b478
commit 5f36875272
1 changed files with 2 additions and 4 deletions

View File

@ -176,13 +176,11 @@ func setPeerURLsHeader(req *http.Request, urls types.URLs) {
req.Header.Set("X-PeerURLs", strings.Join(peerURLs, ","))
}
// addRemoteFromRequest add remote according to request header
func addRemoteFromRequest(tr Transporter, r *http.Request) bool {
// addRemoteFromRequest adds a remote peer according to an http request header
func addRemoteFromRequest(tr Transporter, r *http.Request) {
if from, err := types.IDFromString(r.Header.Get("X-Server-From")); err == nil {
if urls := r.Header.Get("X-PeerURLs"); urls != "" {
tr.AddRemote(from, strings.Split(urls, ","))
return true
}
}
return false
}