-
Notifications
You must be signed in to change notification settings - Fork 426
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
Fix eventlistener crash with multiple interceptors extensions #1282
Fix eventlistener crash with multiple interceptors extensions #1282
Conversation
|
Hi @larhauga. Thanks for your PR. I'm waiting for a tektoncd member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. 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. |
d754f90
to
3795f09
Compare
/ok-to-test |
The following is the coverage report on the affected files.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @larhauga This was a great find.
I have one minor comment on the test. If you are particularly motivated to fix that in this PR, that is fine -- just open an issue for it :)
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dibyom The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
A global shared variable was being written to when extentions were present in the interceptor output. This resulted in a race condition verified by `go test -race ./pkg/sink` with the new test.
3795f09
to
4889d48
Compare
The following is the coverage report on the affected files.
|
My pleasure! The tests are updated with the your suggestion of a function for the TT. |
Thank you! Looks great |
When multiple interceptors are present in an event listener and they produce an extension, a race condition can occur due to a global variable written to in a goroutine.
It is possible that this also affects which pipelines could be triggered if the extensions are used for trigger routing.
Changes
A global shared variable was being written to when extensions were
present in the interceptor output. This resulted in a race condition
verified by
go test -race ./pkg/sink
with the new test.Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:
See the contribution guide for more details.
Release Notes