Description
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
I'll try to write a tight recreator for this since it is difficult and time consuming to recreate on Kubernetes.