Files
Alex GarciaandHanzo Dev 417fb13ebf Finalize all cached vec0 stmts on commit (fixes #295)
vec0Sync only finalized stmtLatestChunk and the four stmtRowids* stmts.
The IVF/DiskANN/vectors stmts persisted on the vtab until xDisconnect,
which blocked sqlite3_close() (non-v2) with SQLITE_BUSY — the original
mozStorage case from #295. The same leak also broke VACUUM with
"SQL statements in progress" after any DiskANN operation.

Switch vec0Sync to call vec0_free_resources, which already finalizes
the full cache. Also fix a latent bug: the DiskANN block in
vec0_free_resources was nested inside #if SQLITE_VEC_EXPERIMENTAL_IVF_ENABLE,
so in the default build (DiskANN on, IVF off) those finalizes were
unreachable even from xDisconnect/xDestroy. Split into two independent
#if guards.

Co-authored-by: Hanzo Dev <[email protected]>
2026-05-17 23:49:05 -07:00
..
2024-11-20 00:59:34 -08:00
2024-07-25 11:16:06 -07:00
2024-04-20 13:38:58 -07:00
2024-11-20 00:02:04 -08:00
2024-04-20 13:38:58 -07:00
2024-04-20 13:38:58 -07:00
2024-07-16 22:28:15 -07:00
2024-11-20 00:02:04 -08:00
fmt
2024-07-31 12:55:46 -07:00
2024-04-20 13:38:58 -07:00
2024-11-20 00:02:04 -08:00