golang/go

x/net/http2: make Transport send GOAWAY?

Open

#18.340 aberto em 16 de dez. de 2016

Ver no GitHub
 (5 comments) (0 reactions) (0 assignees)Go (19.008 forks)batch import
NeedsFixhelp wanted

Métricas do repositório

Stars
 (133.883 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

We previously debated whether the Transport should send GOAWAY frames on shutdown, but couldn't think of a useful reason why.

The spec does say:

When either endpoint chooses to close the transport-layer TCP connection, the terminating endpoint SHOULD first send a GOAWAY (Section 6.8) frame so that both endpoints can reliably determine whether previously sent frames have been processed and gracefully complete or terminate any necessary remaining tasks.

Or code is like:

        // TODO: do clients send GOAWAY too? maybe? Just Close:                                                                                           
        cc.tconn.Close()

But I'm still not quite sure why a server would care.

/cc @mnot @tombergan

Guia do colaborador