v4.1.1 — A store older than its own indexes
·
24 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Fixed
- A store from an early version could not be opened at all, and there was no
way out of it. Starting up creates the indexes, one of which is on a column
that arrives with a migration scheduled to run after the engine is up. On a
store old enough to predate that column, the index could not be created, so
startup failed — and the migration that would have added the column could not
run, because it runs after a startup that never finished.slm db migratedid
not help either: it reports nothing failed and skips that class of migration by
design. Any store in that state was stuck on the version it was already on.
The column is now added before the index that needs it, so those stores open
and finish upgrading on their own. Measured on a real 637 MB store: it went
from refusing to start to a complete upgrade in 19 seconds, with all 7,707
memories, 2,590 records and 848,945 connections unchanged and the integrity
check clean.