v0.15.0 milestone snapshot (condensed) · flight v0.15.0@sha256:30c2b10c (multi-arch INDEX) · connector 0.15.0 · Trino 481 · Cassandra 5.0 RF=3 · 3× i4i.xlarge · ~1.93M partitions/node, 2 SSTable gens · 2026-07-17
| Metric | Value | Bar | |
|---|---|---|---|
| time-to-first-query (cold keyvalue) | 2.22s | Lane-B B4 ≤3s | MET |
| JDBC floor (SELECT 1) | 2.37s | — | — |
| boot RSS per pod | 4–5 Mi | Lane-B B4 idle ≤16Mi | MET |
| index parses at boot | 0 (metric absent) | zero (#2412) | MET |
Cold ≈ warm ≈ JDBC floor — the Summary-guided open (#2412) means no cold-parse penalty. No parse storm at boot.
| Metric | 32-thr (Phase 1) | 80-thr burst | Read |
|---|---|---|---|
| qps | ~39 | ~37–39 | ceiling — extra threads queue |
| p50 / p99 | 798 / 1366ms | 2037 / 2713ms | latency rises, no collapse |
| client errors | 0 | 0 | graceful |
| admission (limit 64) | 2–3 | 4 | bounded, never near cap |
Phases 1–2 left 660 cqlite-* snapshots on the keyvalue table. With the table then left
completely quiet (zero queries), the backlog collapsed 660 → 6 at t=5min — the background grace-sweep firing
on its own. The residual 6 (2 recent snapshots × 3 nodes) is the Phase-2 tail still inside the 10-min retire-grace.
| Action | Result |
|---|---|
| Kill one flight pod mid full-ring count | count returned 1,927,467 (identical), 0 err — failover to RF=3 replicas |
| DaemonSet recreate victim | Running 1/1 in ~79s |
| Trino coordinator restart | clean rollout; cqlite catalog + add-opens survived; first-query 3.42s |
| fd/RSS step-change after recovery | none (no leak; fresh pod idle lower, no upward step) |