Skip to content

v0.15.0

Latest

Choose a tag to compare

@github-actions github-actions released this 17 Jul 16:44
2a6e370

πŸ“– API docs for this release: https://pmcfadin.github.io/cqlite/v0.15.0/
πŸ“‹ Changelog: see CHANGELOG.md

What's Changed

Full Changelog: v0.14.1...v0.15.0

What's Changed

Full Changelog: v0.14.1...v0.15.0

What's Changed

  • docs(#2103): kit loadtest field artifacts β€” round-3/4/5 plans + harness RUN-LOG by @pmcfadin in #2407
  • docs+skills: openspec skill/command definitions + design/research docs + gitignore .superpowers by @pmcfadin in #2408
  • fix(#2397): rotate split primaries across replica owners β€” unblock multi-node read fan-out by @pmcfadin in #2409
  • probe(#2398): identify warm-scan dominant cost β€” token filter is consumer-only, every scan decodes all partition bodies (work-probe counter + pin; fix = #2413) by @pmcfadin in #2414
  • fix(#2384): snapshot-aware SSTable identity path parsing (ID-ful snapshots + snapshots-keyspace guard) by @pmcfadin in #2416
  • Adopt the round-N standard metrics template (#2399) by @pmcfadin in #2422
  • chore(#2399): archive standard-metrics-template + delivery telemetry by @pmcfadin in #2429
  • fix(flight): stream read-path merge per-row to bound intra-partition memory and cancellation (#2230) by @pmcfadin in #2424
  • feat(#2420): flight do_get admission control β€” bounded concurrency, UNAVAILABLE shedding, phase-visible queueing (WS4, spec flight-admission-control) by @pmcfadin in #2431
  • fix(#2423): stream point-read + cache-warm merges row-granularly via drive_merge_over by @pmcfadin in #2434
  • fix(#2428): test-local StreamWalkScope β€” end work-counter cross-test contamination under thread-parallel cargo test by @pmcfadin in #2438
  • docs(#2433): merge-on-green is now GitHub-enforced β€” required check + enforce_admins by @pmcfadin in #2442
  • feat(#2412): lazy Summary-guided BIG index β€” O(summary) open, bounded point intervals, streaming scans (+#2413 token pushdown) by @pmcfadin in #2440
  • chore(#2412): archive lazy-summary-guided-index OpenSpec change + stamp delivery ledger by @pmcfadin in #2445
  • fix(#2369): collection_benchmarks β€” record timing, never assert wall-clock in the correctness gate by @pmcfadin in #2443
  • telemetry(#2369): stamp delivery ledger (+recover pending #2428/#2433 stamps) by @pmcfadin in #2447
  • perf(#2430): materializing full-index scan β€” use loaded entry offsets, drop O(N) per-partition re-probe by @pmcfadin in #2446
  • telemetry(#2430): stamp delivery ledger for materializing-scan re-probe removal (PR #2446) by @pmcfadin in #2450
  • fix(#2356/#2306): connector-side snapshot lifecycle closure β€” per-(ks,table) reuse + warm rebind by @pmcfadin in #2425
  • chore(#2356/#2306): archive snapshot-lifecycle-closure + delivery telemetry by @pmcfadin in #2453
  • fix(#2299): bound peak heap in uncompressed SSTable compaction (410β†’54 MiB) β€” row-granular streaming read + writer/merge direct-stream by @pmcfadin in #2421
  • perf(scan): sequential windowed Data.db pass for non-stitching full scans (#2366) by @pmcfadin in #2437
  • fix(#2299): fail-closed direct-stream gate β€” roborev-1723 guard omitted from PR #2421 merge by @pmcfadin in #2455
  • fix(#2459): restore missing serial_test import β€” main compile break by @pmcfadin in #2461
  • chore(telemetry): record #2366 delivery (PR #2437) by @pmcfadin in #2457
  • fix(#1885): v5 ladder decoder varint arm β€” decode CQL varint as Value::Varint not Blob by @pmcfadin in #2466
  • telemetry(#1885): stamp delivery cycle (PR #2466) by @pmcfadin in #2472
  • fix(#2288): eagerly register cqlite.errors.total at 0 on startup by @pmcfadin in #2468
  • chore(telemetry): record #2299 delivery (PR #2455) by @pmcfadin in #2458
  • docs(#2460): sweep website + CLAUDE.md for 2026-07-14 ships by @pmcfadin in #2474
  • telemetry(#2460): stamp docs-sweep delivery cycle by @pmcfadin in #2478
  • docs(#2473): public Performance page β€” measured R11b results + goals ladder headline by @pmcfadin in #2475
  • telemetry(#2473): stamp delivery ledger for Performance page (PR #2475) by @pmcfadin in #2479
  • fix(#2436): P0 silent row loss β€” replace 1MB row_size heuristic with authoritative remaining-bytes bound by @pmcfadin in #2482
  • telemetry(#2436): stamp delivery ledger (PR #2482) by @pmcfadin in #2483
  • chore(telemetry): record #2288 delivery (PR #2468) by @pmcfadin in #2484
  • fix(#2148): parse Statistics.db TOC once (3 walks -> 1), thread offsets by @pmcfadin in #2485
  • chore(telemetry): record #2148 delivery by @pmcfadin in #2489
  • test(#2013): resource-leak soak test (FD/RSS) + nightly workflow by @pmcfadin in #2486
  • fix(#1819): bound the Docker-availability probe with a wall-clock timeout by @pmcfadin in #2471
  • docs(#2433): PR-gated telemetry stamp + codex roborev model override by @pmcfadin in #2490
  • chore(telemetry): record #2013 delivery (PR #2486) by @pmcfadin in #2494
  • test(#1896): re-bless table_snapshot goldens after v3.5 corpus regen (Cluster B) by @pmcfadin in #2492
  • fix(#2145): hoist decimal max_abs to LazyLock + distinguish watchdog panic vs hang by @pmcfadin in #2497
  • chore(telemetry): record #1819 delivery (PR #2471) by @pmcfadin in #2496
  • fix(#2074): GROUP BY on float/double groups by Cassandra comparator by @pmcfadin in #2488
  • fix(#2470): flaky windowed-stream test β€” thread-local ReadWorkScope replaces global counter assertion by @pmcfadin in #2501
  • telemetry(#2074): stamp delivery ledger for GROUP BY float comparator fix (PR #2488) by @pmcfadin in #2505
  • ci(#2358): auto-run Flight↔Trino docker E2E on integration-surface PRs by @pmcfadin in #2503
  • chore(telemetry): record #1896 delivery (PR #2492) by @pmcfadin in #2502
  • chore(telemetry): record #2358 delivery (PR #2503) by @pmcfadin in #2506
  • feat(#2210): dedicated MADV_RANDOM point-read mmap for large SSTables by @pmcfadin in #2507
  • fix(#1795/#1884/#1885): overflow-safe v5 cell bounds guards + Float32/varint parity + cell_value split by @pmcfadin in #2467
  • telemetry(#2210): stamp delivery ledger (PR #2507) by @pmcfadin in #2510
  • chore(telemetry): record #1795 delivery (PR #2467) by @pmcfadin in #2512
  • chore(telemetry): record #2145 delivery by @pmcfadin in #2514
  • fix(#2173): clamp complex-cell element TTL to i32::MAX matching scalar reader by @pmcfadin in #2498
  • test(#1818): pin BIG point-read repeat is served from the decompressed-chunk cache by @pmcfadin in #2513
  • docs(process): log lessons 16-18 (disk cap, harness eviction, duplicate-issue check) by @pmcfadin in #2515
  • chore(telemetry): record #2173 delivery by @pmcfadin in #2517
  • chore(telemetry): record #1818 delivery (PR #2513) by @pmcfadin in #2518
  • fix(#2151a): harden AG5 data-safe-logging guard against tracing structured-field dumps by @pmcfadin in #2516
  • chore(telemetry): record #2151 delivery (PR #2516) by @pmcfadin in #2520
  • perf(#2096): partition-seeking merge run reader for multi-candidate point reads (D3 follow-up) by @pmcfadin in #2508
  • chore(telemetry): record #2096 delivery by @pmcfadin in #2522
  • fix(#2319): reuse aligned bounce buffer across Direct I/O windowed-scan chunk reads by @pmcfadin in #2525
  • chore(telemetry): record #2319 delivery by @pmcfadin in #2526
  • test(perf): dhat allocs/row + allocs/cell budget for RowCells row-assembly (#2075) by @pmcfadin in #2521
  • docs(#2426): operator-facing flight metrics reference generated from the observability catalog by @pmcfadin in #2532
  • fix(#1869): BIG clustering-slice/reverse seek migrated to ReadAt point_source by @pmcfadin in #2527
  • telemetry(#2426): stamp delivery cycle for PR #2532 by @pmcfadin in #2536
  • chore(telemetry): record #2075 delivery (PR #2521) by @pmcfadin in #2534
  • chore(#2519): move env_logger to [dev-dependencies] by @pmcfadin in #2528
  • test(#2172): faithful subscriber-on overhead bench + wider #1703 span/info demotion coverage (a,b) by @pmcfadin in #2533
  • chore(telemetry): record #2172 delivery (PR #2533) by @pmcfadin in #2543
  • fix(#2524): fail closed on max_compressed_length==0 in read_compressed_offset_window by @pmcfadin in #2530
  • fix(#2529): centralize max_compressed_length==0 guard at CompressionInfo::parse by @pmcfadin in #2540
  • docs(process): log lesson 19 β€” owner decision on default SELECT log posture by @pmcfadin in #2537
  • chore(telemetry): record #1869 delivery (PR #2527) by @pmcfadin in #2539
  • chore(telemetry): record #2529 delivery (PR #2540) by @pmcfadin in #2546
  • chore(telemetry): record #2519 delivery (PR #2528) by @pmcfadin in #2542
  • perf(#1672): serialize_value_into(&mut Vec) β€” kill fresh-Vec-per-cell + double copy by @pmcfadin in #2544
  • perf(#2058): O(depth) local BTI successor walk replacing whole-trie DFS enumeration by @pmcfadin in #2551
  • docs(#2427): refresh cqlite-flight Grafana dashboard for 0.15 instruments + catalog-drift guard by @pmcfadin in #2553
  • feat(#2419): flight saturation gauges β€” fd/thread/RSS sampler, merge egress depth, blocking-task guard (WS2, epic #2313) by @pmcfadin in #2547
  • telemetry(#2058): stamp delivery ledger for BTI local successor walk (PR #2551) by @pmcfadin in #2555
  • chore(#2419): archive OpenSpec change saturation-gauges by @pmcfadin in #2559
  • telemetry(#2419): stamp delivery ledger (PR #2547) by @pmcfadin in #2560
  • fix(#2167): restore compressed CHUNK_READ_CALLS increment + observability nits by @pmcfadin in #2523
  • feat(#2059): global bounded keyβ†’partition-offset cache by @pmcfadin in #2554
  • perf(#1664): kill the MergeEntry double clone in the k-way merge core by @pmcfadin in #2552
  • chore(#2059): archive bounded-key-cache OpenSpec change + stamp delivery telemetry by @pmcfadin in #2566
  • docs(#2452): record reader_opens/rebind_hits_total as intentionally OTel-unmirrored by @pmcfadin in #2570
  • feat(#2012): xtask static audit for the no-unbounded-materialization invariant by @pmcfadin in #2571
  • chore(#2012): archive oom-audit-xtask OpenSpec + stamp telemetry by @pmcfadin in #2573
  • chore(telemetry): record #1672 delivery by @pmcfadin in #2549
  • telemetry(#2427): stamp delivery ledger for Grafana dashboard 0.15 refresh (PR #2553) by @pmcfadin in #2558
  • chore(telemetry): record #2167 delivery (PR #2523) by @pmcfadin in #2562
  • chore(telemetry): record #1664 delivery (PR #2552) by @pmcfadin in #2569
  • fix(#2491): duckdb_parquet_validation test misuse β€” execute statement before column inspection by @pmcfadin in #2564
  • docs: round-12 field validation report by @pmcfadin in #2578
  • telemetry(#2491): stamp delivery ledger for DuckDB uuid-parquet test fix (PR #2564) by @pmcfadin in #2581
  • Stage 0 (#2211): measure-first DecodePolicy bench + A/B report β€” go/no-go input by @pmcfadin in #2563
  • feat(#1918): CQLITE_READ_PATH forcing knob + point-vs-full differential lane by @pmcfadin in #2574
  • chore(openspec): archive runtime-decode-policy (measured-not-justified, #2211) by @pmcfadin in #2583
  • telemetry(#2211): stamp delivery ledger for Stage-0 decode-policy (PR #2563) by @pmcfadin in #2585
  • perf(reconcile): entry() API + mem::take survivors (Q2, #1665) by @pmcfadin in #2582
  • feat(#2418): tools/flight-loadgen β€” raw FlightServiceClient ramp harness (WS1 of #2313) by @pmcfadin in #2575
  • telemetry(#1665): stamp delivery ledger (PR #2582) by @pmcfadin in #2588
  • chore(#1918): archive read-path-forcing-knob OpenSpec + stamp telemetry by @pmcfadin in #2587
  • test(writer): regression-lock zero StatisticsMetadata allocs per partition (#1676) by @pmcfadin in #2591
  • telemetry(#1676): stamp delivery ledger (PR #2591) by @pmcfadin in #2595
  • chore(#2418): finalize flight-loadgen β€” archive OpenSpec + telemetry by @pmcfadin in #2590
  • perf(writer): reusable row_scratch + in-place row-size VInt (R2, #1673) by @pmcfadin in #2592
  • chore(telemetry): record #1673 delivery (PR #2592) by @pmcfadin in #2603
  • docs(#941): DataFusion promotion decision brief β€” Option C (spike-first) by @pmcfadin in #2604
  • docs(process): lesson 20 β€” two flow-closers raced the one-gate-slot check by @pmcfadin in #2594
  • feat(#2063): admit eager multi-generation merge path through the scan-admission semaphore by @pmcfadin in #2568
  • chore(#2063): archive eager-merge-admission spec + stamp telemetry by @pmcfadin in #2607
  • perf(query): fan out WRITETIME/TTL IN metadata reads to targeted lookups (#1916) by @pmcfadin in #2606
  • perf(merge): binary-search range shadowing instead of linear scan (#1669) by @pmcfadin in #2599
  • chore(telemetry): record #1916 delivery (PR #2606) by @pmcfadin in #2611
  • fix(#2452): connector snapshot retirement hardening β€” ref-counted rollback retire + background grace-sweep with quiet-table tick by @pmcfadin in #2579
  • chore(telemetry): record #1669 delivery (PR #2599) by @pmcfadin in #2612
  • telemetry(#2452): stamp delivery ledger (PR #2579) by @pmcfadin in #2614
  • docs(process): lessons 20-21 β€” gate-slot TOCTOU race + recurring disk-full pattern by @pmcfadin in #2608
  • perf(writer): cache ordered column lists + per-column is_complex (#1674) by @pmcfadin in #2615
  • chore(telemetry): record #1674 delivery by @pmcfadin in #2618
  • perf(write): cache parsed CqlType + skip ordered-key re-sort (R6, #1677) by @pmcfadin in #2616
  • chore(telemetry): record #1677 delivery (PR #2616) by @pmcfadin in #2620
  • feat(#1644): K5 β€” zero-copy Bytes-backed Value (Value-v2 train, final stage) by @pmcfadin in #2598
  • fix(compaction): Q4 budget honesty β€” document real contract + account dropped-column pre-pass (#1667) by @pmcfadin in #2622
  • fix(build): repair issue_1667_budget_honesty.rs vs Bytes-backed Value by @pmcfadin in #2628
  • docs(process): lesson 22 β€” Bash-blocked error is the main disk, not a separate quota by @pmcfadin in #2629
  • feat(#1679): S2 β€” incremental BTI partition-trie emission (single sweep + depth-≀9 stack) by @pmcfadin in #2627
  • chore(telemetry): record #1679 delivery (PR #2627) by @pmcfadin in #2630
  • perf(write): one murmur3 per partition β€” fold h1+h2 (#1681) by @pmcfadin in #2621
  • chore(telemetry): record #1681 delivery (PR #2621) by @pmcfadin in #2633
  • chore(#1644): archive zero-copy-value OpenSpec change + stamp telemetry by @pmcfadin in #2623
  • chore(telemetry): record #1667 delivery (PR #2622) by @pmcfadin in #2626
  • release(#2634): bump versions to 0.15.0 + release notes by @pmcfadin in #2635

Full Changelog: v0.14.1...v0.15.0