diff options
| author | Brad Fitzpatrick <bradfitz@golang.org> | 2018-07-12 18:47:31 +0000 |
|---|---|---|
| committer | Brad Fitzpatrick <bradfitz@golang.org> | 2018-07-12 20:05:15 +0000 |
| commit | f22dd66b23ec1a703a3984cad1840bc8692cf1d0 (patch) | |
| tree | cca6d1be042d489715ca6d540ebe9612b8bd4a8b /src/net/http/export_test.go | |
| parent | b888a6227fa56f4698f9e5ca74e8bee10830bebe (diff) | |
| download | go-f22dd66b23ec1a703a3984cad1840bc8692cf1d0.tar.xz | |
net/http: make Transport.CloseIdleConnections close non-bundled http2.Transport
Previously Transport.CloseIdleConnections only closed the HTTP/2
Transport's idle connections if the HTTP/2 transport was configured
automatically via the bundled copy (in h2_bundle.go).
This makes it also work if the user called http2.ConfigureTransport
themselves using golang.org/x/net/http2 instead of the bundled copy.
No tests because we have no current way to run such cross-repo tests,
at least in any efficient or non-flaky way.
Tested by hand that:
package main
import (
"net/http"
"golang.org/x/net/http2"
)
func main() {
tr := &http.Transport{}
http2.ConfigureTransport(tr)
tr.CloseIdleConnections()
}
... now works and calls the x/net/http2.Transport.CloseIdleConnections
code. (I threw in a print statement locally)
Fixes #22891 once CL 123656 is also in.
Change-Id: Id697fd3e7877c3a988bc3c3368b88940ba56cfd0
Reviewed-on: https://go-review.googlesource.com/123657
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/net/http/export_test.go')
| -rw-r--r-- | src/net/http/export_test.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/net/http/export_test.go b/src/net/http/export_test.go index 7cdb51b05b..2c606a45a3 100644 --- a/src/net/http/export_test.go +++ b/src/net/http/export_test.go @@ -117,7 +117,7 @@ func (t *Transport) IdleConnStrsForTesting() []string { func (t *Transport) IdleConnStrsForTesting_h2() []string { var ret []string - noDialPool := t.h2transport.ConnPool.(http2noDialClientConnPool) + noDialPool := t.h2transport.(*http2Transport).ConnPool.(http2noDialClientConnPool) pool := noDialPool.http2clientConnPool pool.mu.Lock() |
