prometheus
prometheus copied to clipboard
TSDB and scraping: improvements to dedupelabels
Fixing various things that lead to memory growth when built with -tags dedupelabels, as reported at https://github.com/prometheus/prometheus/pull/12304#issuecomment-2024756897.
Partner to #14322
- Scraping: add metric for symbol table size
- Scraping: better resetting of symbol-table when it grows
- Scraping: drop series cache when resizing symbol table
- TSDB: rebuild labels symbol-table on each compaction
- TSDB: reset symbol table for exemplars periodically
The larger additions are put into a new file which only builds with -tags dedupelabels, to avoid potential confusion and overhead when built in other ways.
@jesusvazquez @codesome it was decided one of you should review this. :grin:
Force-pushed to fix merge conflicts and squash intermediate commits.