x/net/http2: discrepancies in lost PING handling between Server and Transport · Issue #69963 · golang/go (original) (raw)

Skip to content

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

@mmatczuk

Description

@mmatczuk

Go version

x/net v0.30.0

Output of go env in your module/workspace:

What did you do?

I configured http2.Server with

and caused PING to be lost.

What did you see happen?

The newly added support for lost PING in server:

if sc.pingSent { sc.vlogf("timeout waiting for PING response") sc.conn.Close() return }

https://cs.opensource.google/go/x/net/+/refs/tags/v0.30.0:http2/server.go;l=1047

vs

func (cc *ClientConn) closeForLostPing() { err := errors.New("http2: client connection lost") if f := cc.t.CountError; f != nil { f("conn_close_lost_ping") } cc.closeForError(err) }

https://cs.opensource.google/go/x/net/+/refs/tags/v0.30.0:http2/transport.go;l=1159

What did you expect to see?

I expect to see