Repository navigation
panic: Invalid name validation scheme requested: unset #6407
Copy link
Copy link
Closed
Description
I just tried to deploy parca v0.29.0 and I'm hitting the following panic (previous version of Parca worked with the same env)
panic: Invalid name validation scheme requested: unset
goroutine 275 [running]:
github.com/prometheus/common/model.ValidationScheme.IsValidLabelName(0x8dd372f0dc0?, {0x8dd378b8c40?, 0xb?})
github.com/prometheus/common@v0.67.5/model/metric.go:203 +0xc0
github.com/prometheus/prometheus/model/relabel.relabel(0x8dd374f40e0, 0x8dd3cea3ea0)
github.com/prometheus/prometheus@v0.311.3/model/relabel/relabel.go:326 +0x3cc
github.com/prometheus/prometheus/model/relabel.ProcessBuilder(...)
github.com/prometheus/prometheus@v0.311.3/model/relabel/relabel.go:276
github.com/parca-dev/parca/pkg/scrape.populateLabels(0x8dd3cea3ea0, 0x8dd3794a680)
github.com/parca-dev/parca/pkg/scrape/target.go:285 +0x294
github.com/parca-dev/parca/pkg/scrape.targetsFromGroup(0x8dd3cef78c0, 0x8dd3794a680, {0x0?, 0x4f0b1d4?, 0x64a79c0?}, 0x8dd3cea3ea0)
github.com/parca-dev/parca/pkg/scrape/target.go:380 +0x240
github.com/parca-dev/parca/pkg/scrape.(*scrapePool).Sync(0x8dd3d027320, {0x8dd3734fb00, 0x19, 0x4f0b240?})
github.com/parca-dev/parca/pkg/scrape/scrape.go:237 +0x160
github.com/parca-dev/parca/pkg/scrape.(*Manager).reload.func1({0x8dd3d027320?, {0x8dd3734fb00?, 0x8dd379485b0?, 0x8dd370f4ecd?}})
github.com/parca-dev/parca/pkg/scrape/manager.go:243 +0x4c
created by github.com/parca-dev/parca/pkg/scrape.(*Manager).reload in goroutine 9
github.com/parca-dev/parca/pkg/scrape/manager.go:241 +0x650
I'm not familiar with the code base, but maybe the following output from Claude helps
Root cause
This is not a config or Tilt issue — it's a fresh regression in Parca upstream, introduced today.
- Your manifest pins ghcr.io/parca-dev/parca:v0.29.0 (.tiltbuild/yaml/parca.observability.yaml:198).
- v0.29.0 was published 2026-09-23T17:30:55Z — minutes before you hit this.
- It was cut right after PR #6405 merged into main (commit 4076831a, 17:15:53Z), which bumped github.com/prometheus/prometheus (and transitively prometheus/common to v0.67.5) while fixing
a batch of Dependabot security alerts.
- prometheus/common v0.66+ made a breaking change: model.NameValidationScheme now defaults to a zero value (UnsetValidation) instead of a usable default. Any caller of
IsValidLabelName/relabeling must now explicitly set that scheme at startup — Prometheus's own main.go does this, but Parca's binary (pkg/scrape/target.go:285 → relabel.ProcessBuilder →
relabel()) never got that initialization added when the dependency was bumped.
- Result: the very first scrape-target relabel call panics with Invalid name validation scheme requested: unset.
- This exact breaking change has already bitten Thanos, Grafana Loki, Grafana Tempo, and Kubernetes CI over the past few months — all fixed the same way (explicitly setting
model.NameValidationScheme). Parca just hadn't hit it until today's dep bump landed in the v0.29.0 cut. No existing Parca issue for it yet.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
sbueringer commentedon Sep 23, 2026
cc @thorfour
thorfour commentedon Sep 23, 2026
Thanks for the issue. I'm looking into it
sbueringer commentedon Sep 24, 2026
PR merged, so closing the issue as well.
Thx!