Original post


Does anyone here know much about https://golang.org/pkg/net/http/#Server.Shutdown ?

I’ve been banging my head against the wall for a while trying to figure out why an in-flight request was still completing even though I was setting a short context timeout.

I thought the behaviour would have dropped any in-flight requests once the context timeout had expired, but I now think that the context timeout is there only for notification purposes, rather than being able to cause the side-effect of stopping the server early.

I now believe the docs suggest wont stop the server until the in-flight request has gone ‘idle’. Meaning: I can’t force it to shutdown early, but only be notified that my ‘intended’ timeout has been passed, and the server is still going to wait for a graceful shutdown.

Just trying to bounce this thought process off some other people who might know about this sort of thing 😬