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

Compactor tweaks: Fix pool leak when iter exhausted and async pages for better throughput #3579

Merged
merged 2 commits into from
Apr 17, 2024

Conversation

mdisibio
Copy link
Contributor

@mdisibio mdisibio commented Apr 16, 2024

What this PR does:
Two small improvements to compactors that I noticed in #3537 . Bringing them forward since it is currently paused for a bit, and the changes are very small.

Async pages improves throughput by ~40% in our internal cluster. Below are screenshots showing total output traces and data rate. Benchmarks don't show this since there is no latency like object storage. (Aside, the benchmarks could use some work but skipping for now).

image

image

The pooling leak is mentioned here It only happens when compacting blocks of different trace counts. The benchmarks are also lacking this (they compact blocks of identical counts). Small but useful reduction in memory.

image

Which issue(s) this PR fixes:
Fixes #

Checklist

  • Tests updated
  • Documentation added
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]
Copy link
Member

@joe-elliott joe-elliott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changelog?

@mdisibio mdisibio merged commit 646d3dc into grafana:main Apr 17, 2024
14 checks passed
stoewer added a commit to stoewer/tempo that referenced this pull request Apr 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants