Skip to content

v5.2.0-beta.1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 17 Jul 15:40
v5.2.0-beta.1
8f47d0d

Pre-release (5.2.0-beta.1) for testing — not a stable release. First 5.2 beta.

SQL engine (Resource API) — default flipped legacyauto (#1285)

The new SQL engine on the Resource API is now the default (phases 0-5 cutover); unsupported query shapes fall back to the legacy engine automatically. Highlights:

  • Two-sided primary-key range fused into one bounded seek (#1822).
  • No-WHERE ORDER BY <indexed> served via index order; restricted to the primary key to avoid a full ordered scan (D-219).
  • UPDATE col = col ± N applied as an atomic Addition (F-146).
  • Null-valued conditions served only on indexNulls indexes; runtime search rejections convert to fallback.
  • Unindexed WHERE conjuncts residualized instead of pushed; correct 3VL for NOT IN.
  • Unsupported cases (DISTINCT aggregates, UPDATE SET on the primary key) fall back to legacy.

Data-safety fixes

  • Reject null/undefined id in a Resource-API delete — previously could wipe the whole table — plus a field-aware validator message.
  • Reject null hash values on delete instead of wiping the table (#1837).
  • Reject changing a table's primary key when it has records.
  • SQL UPDATE/DELETE row-finder no longer drops not-yet-swept expired rows.

Also

  • search()'s includeExpired opt-out documented in the DESIGN cheat sheet.

Full Changelog: v5.2.0-alpha.6...v5.2.0-beta.1