Skip to content

Proposal: make ref cache labels share storage with TSDB #3817

@bboreham

Description

@bboreham

Looking at the Go heap usage of blocks ingesters, I see a lot of space taken up with label/values, both the strings and the slices.
I see about the same from LoadWAL() created inside Decoder.Series() as I do from v2Push() created inside FromLabelAdaptersToLabelsWithCopy().
For a brand-new ingester that hasn't loaded WAL, I only see the latter.

@pracucci said "In a brand new ingester they may not be duplicated, while in a long running ingester they are, because we don't have access to TSDB labels to reference them and pick up that string for the ref cache."

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions