Skip to content

v0.25.0

Latest

Choose a tag to compare

@github-actions github-actions released this 06 Sep 10:29
· 10 commits to main since this release
9622f4c

[0.25.0] - 2026-09-06

A lossless storage-efficiency release: format v8 compacts persisted indexes
while preserving spans, payloads, query semantics, and retention settings.

Measured on the three bundled synthetic corpora (paired same-machine
before/after runs, identical ingested bytes; not a forecast for arbitrary
traffic): whole-data-directory size fell 44.2% on generic
(132,663,519 → 73,968,447 bytes for 1M service-trace spans), 31.4% on
llm (107,692,288 → 73,909,976 bytes for 200k LLM-call spans), and
38.1% on pinned-context (4,283,487 → 2,650,416 bytes for 10k
long-context spans). The full normalized export of all 1.21M baseline spans
is byte-identical after migration, and every migrated store verifies intact.
Evidence, latency pairs, and reproduction commands:
docs/benchmarks/storage-v8-comparison.md.

Changed

  • Record offsets and trace/attribute postings use delta varints. Metadata
    sections use LZ4 when it produces fewer bytes, with raw passthrough otherwise.
    Record compression and content-addressed payloads retain their existing codecs.
  • Segment headers and all metadata used to exclude query results carry integrity
    checks. Content-index pages are also checked when read after the segment opens.
  • Format v6 and v7 stores migrate automatically to v8, including pins and their
    manifests. Migration preserves filenames and WAL fold boundaries and proves
    complete coverage of legacy records before replacing a segment.

Fixed

  • Corrupted persisted query indexes can no longer silently hide matching spans
    at open. Malformed geometry and noncanonical varints are refused.
  • Legacy offset metadata that omits intact records is refused instead of
    publishing an apparently healthy but incomplete migrated store.

Upgrade

Migration changes files in place through atomic replacements and resumes after
interruption. It is one-way from the first converted file. Stop the old server
and retain a complete cold backup plus a tested compatible binary before opening
existing data with this release. Downgrade requires restoring that backup;
replacing only the executable is insufficient. See
the format and migration contract.