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
engine: fix panic on waitgroup #3233
engine: fix panic on waitgroup #3233
Conversation
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.
Makes sense. LGTM.
Didn't we want to merge this before the v0.15.1 release? |
@yanivagman I think the PR is right, but I'm trying to be sure by simulating the issue which until now wasn't possible. As we wanted to release yesterday, to avoid blocking I moved this to 0.16.0 as it was before. Not a critical bug. |
Are you guys sure this can only happen by sending a SIGINT? This error was observed on a lambda (where it shouldn't have received a SIGINT) |
@OriGlassman It is not because of SIGINT, but a short-lived The race seems to happen because we close the A simple way to simulate it is by creating a file with just one event: test.json
Then, starting
It should hit the issue every X time that we run
or
|
@yanivagman @rafaeldtinoco @geyslan as per the comment above ˆˆ, after several tests, this PR indeed fixes the bug. |
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.
LGTM
1. Explain what the PR does
Wait must be synchronized with the first Add.
This seems to be the case here, as we call Add from inside the goroutine, for a short lived
tracee-rules
process there might be a race betweencheckCompletion
andsignatureStart
triggering the error reported on the issues #3230 and #31512. Explain how to test it
3. Other comments