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

[8.x] Limit badger gc concurrency to 1 to avoid panic (backport #14340) #14403

Merged
merged 1 commit into from
Oct 21, 2024

Conversation

mergify[bot]
Copy link
Contributor

@mergify mergify bot commented Oct 21, 2024

Motivation/summary

Badger GC will panic when run concurrently. 2 TBS processors may run concurrently during a hot reload. Make TBS processor concurrent-safe by protecting badger gc using a mutex.

Checklist

For functional changes, consider:

  • Is it observable through the addition of either logging or metrics?
  • Is its use being published in telemetry to enable product improvement?
  • Have system tests been added to avoid regression?

How to test these changes

See unit test

Alternatively, somehow (by modifying code locally?) trigger a slow EA reload, and observe that despite 2 TBS processors are running concurrently, gc never runs concurrently.

Related issues

Fixes #14305


This is an automatic backport of pull request #14340 done by [Mergify](https://mergify.com).

Badger GC will panic when run concurrently. 2 TBS processors may run concurrently during a hot reload. Make TBS processor concurrent-safe by protecting badger gc using a mutex.

(cherry picked from commit 43e968f)
@mergify mergify bot requested a review from a team as a code owner October 21, 2024 10:54
@mergify mergify bot added the backport label Oct 21, 2024
@mergify mergify bot merged commit 27bc275 into 8.x Oct 21, 2024
16 of 17 checks passed
@mergify mergify bot deleted the mergify/bp/8.x/pr-14340 branch October 21, 2024 11:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant