Skip to content

x/net/http2: http2: no cached connection was available #22091

Closed
@sjenning

Description

@sjenning

What version of Go are you using (go version)?

go version go1.8.3 linux/amd64

Does this issue reproduce with the latest release?

Unknown, checking now

What operating system and processor architecture are you using (go env)?

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/sjennings/projects/go"
GORACE=""
GOROOT="/home/sjennings/.gvm/gos/go1.8.3"
GOTOOLDIR="/home/sjennings/.gvm/gos/go1.8.3/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build663365804=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

What did you do?

In Kubernetes 1.8, we are seeing $SUBJECT error message on pods that have both a readiness and liveness probe. In this case, the probes are nearly simultaneous (within microseconds). About 2-3 times per hour, there is a timing collision resulting in the failure of one of the two probes with http2: no cached connection was available

I confirmed the disabling http2 for the probe connections causes the issue not to occur.

I also confirmed that disabling one of the probes causes the issue not to occur.

This is not load related as the transport is only used for the probes and there are 2 probes every 5 seconds. It is a timing issue.

What did you expect to see?

The connection succeeds every time

What did you see instead?

http2: no cached connection was available

Additional References

#16582

kubernetes/kubernetes#49740

I'll try to write a tight recreator for this since it is difficult and time consuming to recreate on Kubernetes.

@smarterclayton @derekwaynecarr

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions