Skip to content

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

Merged
mdisibio merged 2 commits intografana:mainfrom
mdisibio:compactor-tweaks
Apr 17, 2024
Merged

Compactor tweaks: Fix pool leak when iter exhausted and async pages for better throughput#3579
mdisibio merged 2 commits intografana:mainfrom
mdisibio:compactor-tweaks

Conversation

@mdisibio
Copy link
Copy Markdown
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
Copy Markdown
Collaborator

@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
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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants