Skip to content

v0.28.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 11:27
· 183 commits to main since this release

Highlights

Named databases checkpoint and open in bounded memory. A named .loradb database's sync() used to build the whole snapshot in memory, several copies deep, and the archive kept it resident afterwards; opening decoded it the same way. Both now stream. On a 3M-node graph (630 MiB in memory):

v0.27.1 v0.28.0
sync(), peak heap over the graph +5.4 GiB +11 MiB
open, peak heap over the graph +5.3 GiB +13 MiB
process max RSS (macOS) 6.45 GB 1.13 GB
RSS under glibc over three sync() calls (1M nodes) 1.2 → 1.9 GB flat at 305 MiB
.loradb size 155 MB 54 MB
open 14.3 s 8.9 s
sync() 9.4 s 4.6 s

Writers no longer wait while sync() writes the snapshot, only while it takes the graph and its WAL position. recover, managed checkpoints, checkpoint_to and save_snapshot_to use the same streaming path. The snapshot format is unchanged: v0.27 archives open in v0.28, and v0.28 archives open in v0.27.

Breaking change

sync() on a named database now drops the WAL its snapshot covers. Until now the archive kept every WAL segment since the database was created. A change feed on a named database can therefore resume only from the last sync() onwards; an older fromLsn fails with LORA_CHANGES_TRUNCATED, the same as after a managed checkpoint. Resuming after the last sync() replays over the archive's snapshot as before.

Testing

Besides the test suites, 1,200 kill -9 rounds on macOS and Linux killed a writer at random points (in writes, in sync() and in open), and every acknowledged write survived with the graph intact.


[0.28.0] - 2026-10-25

CI/CD

  • lora-wasm: Test on ubuntu-24.04 (2c6fee3)
  • lora-python: Test on ubuntu-24.04 (12329d2)
  • release: Build native Linux artifacts on ubuntu-24.04 (35f78c5)
  • lora-ruby: Test on ubuntu-24.04 (a4a74ce)
  • Install wasm-pack from its release, not jetli/wasm-pack-action (2f9ba9d)

Features

  • lora-database: A named database's sync() drops the WAL its snapshot covers (a287f96)

Performance

  • lora-database: Sync() and open stream the snapshot (14d6f2d)

Tests

  • lora-database: A kill-9 probe for named databases, write timing in the sync probe (fe70233)

Assets

Platform Asset
Linux x86_64 lora-server-v0.28.0-x86_64-unknown-linux-gnu.tar.gz
Windows x86_64 lora-server-v0.28.0-x86_64-pc-windows-msvc.zip
macOS Intel lora-server-v0.28.0-x86_64-apple-darwin.tar.gz
macOS Apple Silicon lora-server-v0.28.0-aarch64-apple-darwin.tar.gz
Full changelog CHANGELOG.md

Each binary archive ships with a matching .sha256 file. An aggregated lora-server-v0.28.0-SHA256SUMS.txt is also attached.

Download, verify, and run instructions: see RELEASING.md and the README.