All posts
Engineering

One Week of Real Traffic on SQLite: What Broke and What Didn't

The follow-up to our SQLite observability benchmark: a full week of production-shaped traffic against the single-binary stack, with the failure modes nobody benchmarks for.

TL;DR

The first post measured hour one. This one measures week one. We let the same single-binary SQLite stack ingest live traffic for seven days while querying it the way a real team would, then catalogued every degradation we could find.

Setup: what "week one" means

Same Hetzner CCX13 as the benchmark post. The workload is not synthetic any more: the dev stack ships real traces, logs, and metrics from TracePath's own development, replayed at a shaped rate that preserves burstiness. We kept the existing dashboards open all week and ran endpoint drilldowns hourly.

TODO-content: TODO-content: describe the replay source and rate profile, then walk through the day-by-day log: vacuum events, WAL checkpoint pauses, query latency drift on the endpoints table once it crossed ~10M rows. Include the p50/p95/p99 table for reads-while-writing, and the one moment where a 40MB payload batch caused a 2s stall and how the admission queue absorbed it. End with the verdict: what we changed in defaults as a result (batch size, cache pragma), and what stays the same. Cross-link the original SQLite post and the ClickHouse migration guide.

Subscribe

Get new engineering posts in your inbox