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

revision.TestReconcile is unstable #2849

Closed
markusthoemmes opened this issue Jan 4, 2019 · 6 comments · Fixed by #2935
Closed

revision.TestReconcile is unstable #2849

markusthoemmes opened this issue Jan 4, 2019 · 6 comments · Fixed by #2935
Labels
area/test-and-release It flags unit/e2e/conformance/perf test issues for product features kind/bug Categorizes issue or PR as related to a bug.

Comments

@markusthoemmes
Copy link
Contributor

See:

I1225 08:08:59.777] === RUN   TestReconcile
I1225 08:08:59.778] ==================
I1225 08:08:59.778] WARNING: DATA RACE
I1225 08:08:59.778] Write at 0x00c420382430 by goroutine 169:
I1225 08:08:59.778]   github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1.conditionsImpl.InitializeConditions()
I1225 08:08:59.778]       /go/src/github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1/condition_set.go:322 +0xb3
I1225 08:08:59.778]   github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1.(*conditionsImpl).InitializeConditions()
I1225 08:08:59.778]       <autogenerated>:1 +0x80
I1225 08:08:59.779]   github.com/knative/serving/pkg/apis/serving/v1alpha1.(*RevisionStatus).InitializeConditions()
I1225 08:08:59.779]       /go/src/github.com/knative/serving/pkg/apis/serving/v1alpha1/revision_types.go:329 +0xa0
I1225 08:08:59.779]   github.com/knative/serving/pkg/reconciler/v1alpha1/testing.WithInitRevConditions()
I1225 08:08:59.779]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/testing/functional.go:439 +0x40
I1225 08:08:59.779]   github.com/knative/serving/pkg/reconciler/v1alpha1/revision.AllUnknownConditions()
I1225 08:08:59.779]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/revision/table_test.go:809 +0x3c
I1225 08:08:59.780]   github.com/knative/serving/pkg/reconciler/v1alpha1/revision.rev()
I1225 08:08:59.780]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/revision/table_test.go:798 +0x1ac
I1225 08:08:59.780]   github.com/knative/serving/pkg/reconciler/v1alpha1/revision.TestReconcile()
I1225 08:08:59.780]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/revision/table_test.go:71 +0x282
I1225 08:08:59.780]   testing.tRunner()
I1225 08:08:59.780]       /usr/local/go/src/testing/testing.go:777 +0x16d
I1225 08:08:59.780] 
I1225 08:08:59.780] Previous write at 0x00c420382430 by goroutine 164:
I1225 08:08:59.781]   github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1.conditionsImpl.InitializeConditions()
I1225 08:08:59.781]       /go/src/github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1/condition_set.go:322 +0xb3
I1225 08:08:59.781]   github.com/knative/serving/vendor/github.com/knative/pkg/apis/duck/v1alpha1.(*conditionsImpl).InitializeConditions()
I1225 08:08:59.781]       <autogenerated>:1 +0x80
I1225 08:08:59.781]   github.com/knative/serving/pkg/apis/serving/v1alpha1.(*RevisionStatus).InitializeConditions()
I1225 08:08:59.781]       /go/src/github.com/knative/serving/pkg/apis/serving/v1alpha1/revision_types.go:329 +0xa0
I1225 08:08:59.781]   github.com/knative/serving/pkg/reconciler/v1alpha1/revision.(*Reconciler).reconcile()
I1225 08:08:59.782]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/revision/revision.go:360 +0x128
I1225 08:08:59.782]   github.com/knative/serving/pkg/reconciler/v1alpha1/revision.(*Reconciler).Reconcile()
I1225 08:08:59.782]       /go/src/github.com/knative/serving/pkg/reconciler/v1alpha1/revision/revision.go:263 +0x2a6
I1225 08:08:59.782]   github.com/knative/serving/vendor/github.com/knative/pkg/controller.(*Impl).processNextWorkItem()
I1225 08:08:59.782]       /go/src/github.com/knative/serving/vendor/github.com/knative/pkg/controller/controller.go:266 +0x4bf
I1225 08:08:59.782]   github.com/knative/serving/vendor/github.com/knative/pkg/controller.(*Impl).Run.func1()
I1225 08:08:59.783]       /go/src/github.com/knative/serving/vendor/github.com/knative/pkg/controller/controller.go:218 +0x38
I1225 08:08:59.783] 
I1225 08:08:59.783] Goroutine 169 (running) created at:
I1225 08:08:59.783]   testing.(*T).Run()
I1225 08:08:59.783]       /usr/local/go/src/testing/testing.go:824 +0x564
I1225 08:08:59.783]   testing.runTests.func1()
I1225 08:08:59.783]       /usr/local/go/src/testing/testing.go:1063 +0xa4
I1225 08:08:59.783]   testing.tRunner()
I1225 08:08:59.783]       /usr/local/go/src/testing/testing.go:777 +0x16d
I1225 08:08:59.784]   testing.runTests()
I1225 08:08:59.784]       /usr/local/go/src/testing/testing.go:1061 +0x4e1
I1225 08:08:59.784]   testing.(*M).Run()
I1225 08:08:59.784]       /usr/local/go/src/testing/testing.go:978 +0x2cd
I1225 08:08:59.784]   main.main()
I1225 08:08:59.784]       _testmain.go:82 +0x22a
I1225 08:08:59.784] 
I1225 08:08:59.784] Goroutine 164 (running) created at:
I1225 08:08:59.784]   github.com/knative/serving/vendor/github.com/knative/pkg/controller.(*Impl).Run()
I1225 08:08:59.785]       /go/src/github.com/knative/serving/vendor/github.com/knative/pkg/controller/controller.go:217 +0x14d
I1225 08:08:59.785] ==================

Happened in https://gubernator.knative.dev/build/knative-prow/logs/ci-knative-serving-nightly-release/1077474453656440833

@knative-prow-robot knative-prow-robot added area/test-and-release It flags unit/e2e/conformance/perf test issues for product features kind/bug Categorizes issue or PR as related to a bug. labels Jan 4, 2019
@markusthoemmes markusthoemmes changed the title TestReconcile is unstable revision.TestReconcile is unstable Jan 4, 2019
@markusthoemmes
Copy link
Contributor Author

markusthoemmes commented Jan 4, 2019

This makes very little sense to me.

table_test.go:71 creates a new revision object as a kind of constant. It's only there to compare it against the outcome and that reference shouldn't even enter the controller ever.

@dprotaso
Copy link
Member

dprotaso commented Jan 4, 2019 via email

@markusthoemmes
Copy link
Contributor Author

@dprotaso sure thing, done!

@markusthoemmes
Copy link
Contributor Author

Happened again and still leaves me puzzled what's going on.

https://gubernator.knative.dev/build/knative-prow/logs/ci-knative-serving-continuous/1085386699430694912

dprotaso added a commit to dprotaso/serving that referenced this issue Jan 16, 2019
knative-prow-robot pushed a commit that referenced this issue Jan 16, 2019
* Bump knative/pkg to d3a9e54

Fixes #2849

* party like it's 2019
@markusthoemmes
Copy link
Contributor Author

@knative-prow-robot
Copy link
Contributor

@markusthoemmes: Reopening this issue.

In response to this:

Sadly not fixed yet :(

https://gubernator.knative.dev/build/knative-prow/logs/ci-knative-serving-continuous/1085749086486794240

/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

mattmoor added a commit to mattmoor/serving that referenced this issue Feb 17, 2019
This adds a header `k-network-probe`, to which the Knative networking elements
respond without forwarding the requests.  They also identify themselves in their
response, so that we know what component is handling the probe.

This is related to: knative#2856, knative#2849, knative#3239
mattmoor added a commit to mattmoor/serving that referenced this issue Feb 17, 2019
This adds a header `k-network-probe`, to which the Knative networking elements
respond without forwarding the requests.  They also identify themselves in their
response, so that we know what component is handling the probe.

This is related to: knative#2856, knative#2849, knative#3239
mattmoor added a commit to mattmoor/serving that referenced this issue Feb 17, 2019
This adds a header `k-network-probe`, to which the Knative networking elements
respond without forwarding the requests.  They also identify themselves in their
response, so that we know what component is handling the probe.

This is related to: knative#2856, knative#2849, knative#3239
mattmoor added a commit to mattmoor/serving that referenced this issue Feb 17, 2019
This adds a header `k-network-probe`, to which the Knative networking elements
respond without forwarding the requests.  They also identify themselves in their
response, so that we know what component is handling the probe.

This is related to: knative#2856, knative#2849, knative#3239
knative-prow-robot pushed a commit that referenced this issue Feb 17, 2019
This adds a header `k-network-probe`, to which the Knative networking elements
respond without forwarding the requests.  They also identify themselves in their
response, so that we know what component is handling the probe.

This is related to: #2856, #2849, #3239
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/test-and-release It flags unit/e2e/conformance/perf test issues for product features kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants