Skip to content

v0.2.0

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 04:16
· 43 commits to main since this release
v0.2.0
331655d

[0.2.0] - 2026-06-12

Features

  • sql: Bind FOR VALID_TIME AS OF onto the bound plan (STL-162) (#78)
  • exec: Vectorized operator framework — batch-at-a-time pull pipeline (STL-169) (#77)
  • engine: Multi-statement BEGIN/COMMIT/ROLLBACK through pgwire (STL-174) (#79)
  • pgwire: Extended-query protocol + prepared-statement cache (STL-182) (#80)
  • exec: Both-axes (system + valid) version resolution in SnapshotScan (STL-163) (#81)
  • storage: Distinguish empty/absent zone-map bounds for bytes columns (STL-120) (#82)
  • engine: Honor SELECT projection + WHERE via a row codec (STL-151) (#83)
  • sql: SQL:2011 period predicates over half-open intervals (STL-165) (#86)
  • engine: Route bitemporal AS OF (sys + valid) through SessionEngine + pgwire (STL-164) (#85)
  • sql: Portable hash-key function + published byte-spec (STL-179) (#90)
  • types: First-class PERIOD type backing system/valid time (STL-180) (#87)
  • storage: Checkpoint flushes delta tier to sealed segments + bounds recovery replay (STL-177) (#92)
  • txn: Verify the commit-log hash chain on recovery + tamper-evidence test (STL-178) (#88)
  • sql: TIMESTAMPTZ UTC-internal + half-open boundary semantics (STL-189) (#91)
  • types: Add UUID + BYTEA scalar types with wire text encoders (STL-181) (#89)
  • exec: Row-group-scoped late materialization in SnapshotScan (STL-155) (#96)
  • cli: Interactive query shell over pg-wire (STL-185) (#95)
  • cli: Datum-brand shell visual design + psql-parity meta-commands (STL-198) (#97)
  • engine: Savepoints (SAVEPOINT / ROLLBACK TO / RELEASE) over multi-statement txns (STL-176) (#98)
  • exec: Vectorized scalar expression evaluator + Filter operator (STL-170) (#99)
  • engine: Snapshot isolation across multi-statement transactions (STL-175) (#100)
  • exec: Wire vectorized Filter onto the live SELECT path (STL-206) (#102)
  • exec: Zone-map row-group block skipping in the vectorized scan (STL-173) (#103)
  • exec: Hash GROUP BY + aggregates (COUNT/SUM/MIN/MAX/AVG) (STL-171) (#104)
  • exec: AVG returns a true fractional FLOAT8 average (STL-209) (#105)
  • exec: Hash join operators — inner/left/semi/anti (STL-172) (#106)
  • engine: Durable catalog log + SessionEngine cold-boot recovery (STL-210) (#107)
  • exec: Vectorized evaluator — temporal/uuid/bytea/period types + div/mod (STL-207) (#108)
  • pgwire: Binary-format encoders + format-code negotiation (STL-183) (#109)
  • exec: Zero-copy shared-buffer Column for batch slicing + projection (STL-191) (#110)
  • engine: Crash-atomic group commit — one WAL record + one fsync per COMMIT (STL-192) (#111)
  • sql: Per-row period predicates over value columns (STL-193) (#112)
  • sql: Write valid-time intervals through INSERT/UPDATE (STL-194) (#113)
  • engine: Drive storage flush/checkpoint from SessionEngine (STL-195) (#115)
  • cli: ⇥ completion from the live catalog + persisted shell history (STL-202) (#116)
  • sql: Operator-facing CHECKPOINT/FLUSH admin command over pgwire (STL-219) (#118)
  • storage: Bound Engine::flush row-groups so scans benefit from late materialization (STL-197) (#119)
  • engine: Prune the MVCC write index below the oldest live snapshot (STL-204) (#120)
  • engine: Read-your-own-writes — overlay buffered txn writes on snapshot reads (STL-203) (#121)
  • pgwire: ROLLBACK TO SAVEPOINT recovers an aborted transaction (STL-205) (#122)
  • pgwire: Statement-level RowDescription on Describe (STL-212) (#123)
  • sql: Emit Div/Mod, new-type comparisons, and per-row PERIOD on the live WHERE path (STL-213) (#124)
  • engine: Cross-table crash-atomic commit via per-transaction commit marker (STL-215) (#126)
  • exec: Zero-copy Filter row selection via selection-vector batches (STL-214) (#125)
  • storage: Poison the WAL on an fsync failure (STL-217) (#129)
  • storage: Roll back an aborted group commit's in-memory writes (STL-216) (#130)
  • cli: Adopt rustyline with-file-history for shell history (STL-221) (#136)
  • engine: Valid-time read-your-own-writes overlay (STL-223) (#139)
  • sql,cli: Varchar-family column types, civil-time DML literals, shell timing trailer (#140)
  • storage,ci: Portable positioned-read backend + Windows CI leg (STL-160) (#143)

Bug Fixes

  • exec: Strip the valid-time frame on a no-pin read (STL-218) (#114)
  • engine: Close the dropped era's rows at DROP TABLE (STL-211) (#117)
  • engine: Re-derive a dropped era's storage closes at recovery (STL-220) (#132)
  • pgwire: Reject extended Bind with a mismatched parameter count (STL-222) (#131)
  • engine: Read a valid-time UPDATE's prior version bare across tiers (STL-226) (#137)
  • engine: Observe the clock for fresh read snapshots so AS OF now() tracks idle time (STL-227) (#144)

Performance

  • exec: Zero-copy selection-vector join output gather (STL-224) (#138)

Documentation

  • adr: ADR-0027 vectorized execution model (STL-188) (#93)
  • config: Add a sample stele.toml for operators (STL-208) (#101)

Testing

  • exec: Prove bitemporal DML deletion-gap survives index rebuild (STL-166) (#84)
  • storage: Sealed-segment immutability oracle (STL-186) (#94)
  • sim: Snapshot-isolation + provenance correctness oracle (STL-168) (#133)
  • oracle: SQL-path bitemporal AS OF (sys, valid) DuckDB differential (STL-167) (#135)
  • ci: JDBC + psycopg parameterized-query driver gate (STL-184) (#141)
  • sim: Vectorized-exec + mixed commit/rollback txn scenarios under fault injection (STL-187) (#142)

Build System

  • Bump toml from 0.8.23 to 1.1.2+spec-1.1.0 (#127)
  • Bump workspace MSRV + pinned toolchain to Rust 1.89.0 (STL-225) (#134)

CI/CD

  • Bump taiki-e/install-action from 2.81.4 to 2.81.10 (#128)