-
Notifications
You must be signed in to change notification settings - Fork 197
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: child span not acquiring transaction lock in some cases #1487
Conversation
Spans from the same transaction share the dropped spans map. If they end concurrency a race condition could happen when updating the map. Add a RW lock to prevent that.
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.
Would you mind adding a test covering the bug?
I've added a test and discovered more issues. It seems this is affecting more than just the dropped spans. I've pushed some changes and added a test. |
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.
Thanks, this looks better!
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.
Once this is ready to merge, please also add a changelog entry
Where should I add that ? Looking at past releases, we're adding all the changelog entries on release |
@simitt could you clarify the above question ? |
@kruskall in the past we have added entries to the Unreleased section. We've not been consistent about it though, and have sometimes just added the entries retrospectively at release time. Let's merge this and create a patch release - either adding the entry now, or creating the section at release time. |
Apologies @kruskall , I missed your message. |
This reverts commit 7fe3968.
The previous fix didn't cover all cases. The issue is deeper and affects more than the transaction data. We need to always acquire the tx lock before ending the span.
Co-authored-by: Marc Lopez Rubio <[email protected]>
Co-authored-by: Marc Lopez Rubio <[email protected]>
Co-authored-by: Marc Lopez Rubio <[email protected]>
* docs: update doc with go support policy * docs: remove go.mod comment the doc doesn't actually mention specific versions
…astic#1496) * docs: mention public bug bounty program in security policy * docs: remove SECURITY.md to fallback to org-wide security policy
bd9e836
to
863c772
Compare
Spans from the same transaction share the dropped spans map. If they end concurrency a race condition could happen when updating the map.
Add a RW lock to prevent that.
Closes #1484