mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
parent
b7761530e1
commit
a76f5f5ed2
@ -112,9 +112,10 @@ func (p *reverseProxy) ServeHTTP(rw http.ResponseWriter, clientreq *http.Request
|
|||||||
closeNotifier, ok := rw.(http.CloseNotifier)
|
closeNotifier, ok := rw.(http.CloseNotifier)
|
||||||
cancel := httputil.RequestCanceler(p.transport, proxyreq)
|
cancel := httputil.RequestCanceler(p.transport, proxyreq)
|
||||||
if ok {
|
if ok {
|
||||||
|
closeCh := closeNotifier.CloseNotify()
|
||||||
go func() {
|
go func() {
|
||||||
select {
|
select {
|
||||||
case <-closeNotifier.CloseNotify():
|
case <-closeCh:
|
||||||
atomic.StoreInt32(&requestClosed, 1)
|
atomic.StoreInt32(&requestClosed, 1)
|
||||||
log.Printf("proxy: client %v closed request prematurely", clientreq.RemoteAddr)
|
log.Printf("proxy: client %v closed request prematurely", clientreq.RemoteAddr)
|
||||||
cancel()
|
cancel()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user