v0.7.0
<p>The registry search index is keyed by registry id, and a rebuild no longer takes quadratic time.</p>
5 October 2026
Changed
search_indexdocuments use the record'sregistry.idas their rowid instead of auuidcolumn, so finding or deleting one is a rowid lookup instead of a table scan.registry.idis an explicitINTEGER PRIMARY KEY, becauseVACUUMrenumbers an implicit rowid. Registry schema is 16, so every registry rebuilds on first boot.Registry::set()is an upsert. A replace would mint a new id and orphan the record's search document.FieldIndex::index()needs the registry row to exist first, andFieldIndex::remove()must run before the row is deleted.Registry::rebuild()connects without bootstrapping, so an explicit rebuild no longer runs a silent one first.
Fixed
registry:rebuildtook quadratic time on a large site. It now prints a live counter with a rate (Cli::status()) instead of a progress bar, since a total would need the registry to boot first.
Comments
No comments yet. Be the first!
Loading form…