Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unit test k8s.io/kubernetes/pkg/kubelet/rkt TestVersion #17757

Closed
deads2k opened this issue Dec 13, 2017 · 3 comments · Fixed by #18409
Closed

unit test k8s.io/kubernetes/pkg/kubelet/rkt TestVersion #17757

deads2k opened this issue Dec 13, 2017 · 3 comments · Fixed by #18409
Assignees
Labels
component/kubernetes kind/test-flake Categorizes issue or PR as related to test flakes. priority/P1 sig/pod

Comments

@deads2k
Copy link
Contributor

deads2k commented Dec 13, 2017

https://openshift-gce-devel.appspot.com/build/origin-ci-test/pr-logs/pull/17749/test_pull_request_origin_unit/6882/

github.com/openshift/origin/vendor/k8s.io/kubernetes/pkg/kubelet/rkt TestVersion 0.01s

<autogenerated>:1: 
                          
	Error Trace:	remote_runtime_test.go:66
Error:      	Received unexpected error:
rpc error: code = Unavailable desc = grpc: the connection is unavailable
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x17bcc91]

goroutine 20 [running]:
testing.tRunner.func1(0xc42060e0f0)
/usr/local/go/src/testing/testing.go:711 +0x5d9
panic(0x1904bc0, 0x24bfc70)
/usr/local/go/src/runtime/panic.go:491 +0x2a2
github.com/openshift/origin/vendor/k8s.io/kubernetes/pkg/kubelet/remote.TestVersion(0xc42060e0f0)
/go/src/github.com/openshift/origin/_output/local/go/src/github.com/openshift/origin/vendor/k8s.io/kubernetes/pkg/kubelet/remote/remote_runtime_test.go:67 +0x181
testing.tRunner(0xc42060e0f0, 0x1aec938)
/usr/local/go/src/testing/testing.go:746 +0x16d
created by testing.(*T).Run
/usr/local/go/src/testing/testing.go:789 +0x569
FAIL	github.com/openshift/origin/vendor/k8s.io/kubernetes/pkg/kubelet/remote	0.646s

Seen post 1.9 rebase.

@sjenning are flakes still automatic p1s?

@deads2k deads2k added kind/test-flake Categorizes issue or PR as related to test flakes. priority/P1 labels Dec 13, 2017
@bparees
Copy link
Contributor

bparees commented Jan 23, 2018

@sjenning sjenning assigned RobertKrawitz and unassigned sjenning Jan 29, 2018
@RobertKrawitz
Copy link
Contributor

RobertKrawitz commented Jan 29, 2018

Two issues:

  1. Issue is that fakeRuntime.Start() is returning prior to the listener being set up, and the remote runtime test is assuming that everything is ready. Whether this happens correctly or not depends upon factors such as speed of and load on the system under test among others. Solution: fakeRuntime.Start() must not return until it has successfully created the listener. remote.createAndStartFakeRemoteRuntime() must call fakeremote.Start() normally, and fakeRemote.Start() must call RemoteRuntime.server.Serve() as a goroutine.

  2. Various places in remote_runtime_test.go must require.noError() rather than assert.noError().

Preparing the PR now. Tested by introducing a 1 second sleep in util.createListener, test failed every time. Fix #1, problem did not reproduce in about 10 tries. Also running a long loop, and adding load to the system.

@mfojtik
Copy link
Contributor

mfojtik commented Feb 2, 2018

This flakes seems to occur 1 per day or so https://snowstorm-origin-ci.svc.ci.openshift.org

openshift-merge-robot added a commit that referenced this issue Feb 2, 2018
Automatic merge from submit-queue (batch tested with PRs 18393, 18409).

UPSTREAM: 58994: Race condition between listener and client in remote…

…_runtime_test

picks kubernetes/kubernetes#58994
fixes  #17757
openshift-publish-robot pushed a commit to openshift/kubernetes that referenced this issue Feb 27, 2018
Automatic merge from submit-queue (batch tested with PRs 18393, 18409).

UPSTREAM: 58994: Race condition between listener and client in remote…

…_runtime_test

picks kubernetes#58994
fixes  openshift/origin#17757

Origin-commit: 4f132683cf8c2f3193aea96f8a72383aa3e77ac7
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/kubernetes kind/test-flake Categorizes issue or PR as related to test flakes. priority/P1 sig/pod
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants