timescale.info
Sign inSign up

How OpenChronology was built

Every merged pull request of openchronology/timeline-app, its first week of commits and its releases; and before them the 2020 PureScript editor, from snapshots of its deleted repositories in the Wayback Machine. Written to this server through the HTTP API.

327 moments · 2020-03-09T00:15:08Z CE – 2026-11-02T20:11:21Z CE · by @athan · @athan

#31 · Keep benchmark sizes intact in the Benchmarks workflow

  • timeline-app
  • pull request

Fixes the failure in Benchmarks run #1. **Cause:** the `sizes` input had an unquoted default, `1000,10000,50000`. It reached the job as `BENCH_SIZES=10001000050000` with the commas stripped. Seeding then tried to allocate a 20-billion-entry cluster array and crashed with `RangeError: Invalid array length`. **Fix** - Quote the default so it stays a string. - Accept commas or spaces between sizes in both the Node harness and the criterion bench. - Reject sizes outside 1–200,000 moments (the document limit) with a clear error, and fall back to the defaults when the value is empty. **Verified:** a Benchmarks run on this branch passed in 11.5 minutes (run 37873190903). It produced all 63 measurements at 1k/10k/50k across the three backends and uploaded the `benchmark-report` artifact. Saving one moment at 50k took 5.6 s on PostgreSQL and 0.62 s on SQLite.

Sources

Open #31 · Keep benchmark sizes intact in the Benchmarks workflow in the timeline