Tempo v3.0.0 released on 28-05-2026

Tempo v3.0.0 is out now. Operators should pay attention: the release replaces the legacy ingester-based write path with a new ingest/write architecture, removes v2 block encoding and several deprecated flags, and graduates TraceQL metrics to GA.
Read the migration guide and upgrade instructions before changing production deployments — key references: Migration guide, Upgrade guide, and the Release notes (changelog: GitHub).
What’s in this release
- New ingest/write architecture replacing legacy ingesters, with single-binary and distributed behaviours updated and improved live-store correctness and observability.
- Breaking changes and cleanup: removal of v2 block encoding, deprecation of many per-module block/WAL configs now centralised under storage.trace.block, and several deprecated flags/receivers removed or disabled by default.
- TraceQL metrics reaches GA (with an experimental faster read path behind a hint), vParquet5 improvements for performance and correctness, and expanded metrics-generator controls for cardinality.
Upgrade notes
- Major breaking changes: the legacy ingester-based write path is removed and v2 blocks/compactor are gone — follow the migration guide and upgrade guide for step‑by‑step actions and gotchas.
- Temporary fallback for legacy overrides: Tempo now refuses to start if legacy overrides are detected; set
enable_legacy_overrides: trueor use-config.enable-legacy-overrides=trueto opt back in briefly, but validate in staging because a full rollback may not be straightforward.
Share comments on your upgrade or migration experience so others can learn from real-world issues and fixes.


