mirror of
https://github.com/golang/net.git
synced 2026-03-31 10:27:08 +09:00
http2: deflake TestTransportRetriesOnStreamProtocolError
During this test: -> client sends req1 <- server sends req1 headers -> client sends req2 <- server resets req2 <- server sends END_STREAM for req1 -> client closes the *server* connection The flake occurs when the last two steps happen out of order: The client processes the reset for req2, returns from RoundTrip, and the test closes the connection before the server writes the last DATA frame for req1. This can be demonstrated by inserting a 1ms sleep between WriteRSTStream and WriteData on the server side of the test. It isn't clear why the client side of the test is closing the server side of the connection; it isn't essential to the test in any way. Remove it. Fixes golang/go#48994. Change-Id: If074e45a76205ebd245617ef1b068967a6674b94 Reviewed-on: https://go-review.googlesource.com/c/net/+/356329 Trust: Damien Neil <dneil@google.com> Run-TryBot: Damien Neil <dneil@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
This commit is contained in:
@@ -5460,7 +5460,6 @@ func TestTransportRetriesOnStreamProtocolError(t *testing.T) {
|
||||
if got := fmt.Sprint(err); got != want {
|
||||
t.Errorf("didn't dial again: got %#q; want %#q", got, want)
|
||||
}
|
||||
ct.sc.Close()
|
||||
if res != nil {
|
||||
res.Body.Close()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user