mirror of
https://github.com/asg017/sqlite-vec.git
synced 2026-04-25 00:36:56 +02:00
Replace the old INSERT INTO t(rowid) VALUES('command') hack with a
proper hidden command column named after the table (FTS5 pattern):
INSERT INTO t(t) VALUES ('oversample=16')
The command column is the first hidden column (before distance and k)
to reserve ability for future table-valued function argument use.
Schema: CREATE TABLE x(rowid, <cols>, "<table>" hidden, distance hidden, k hidden)
For backwards compat, pre-v0.1.10 tables (detected via _info shadow
table version) skip the command column to avoid name conflicts with
user columns that may share the table's name. Verified with legacy
fixture DB generated by sqlite-vec v0.1.6.
Changes:
- Add hidden command column to sqlite3_declare_vtab for new tables
- Version-gate via _info shadow table for existing tables
- Validate at CREATE time that no column name matches table name
- Add rescore_handle_command() with oversample=N support
- rescore_knn() prefers runtime oversample_search over CREATE default
- Remove old rowid-based command dispatch
- Migrate all DiskANN/IVF/fuzz tests and benchmarks to new syntax
- Add legacy DB fixture (v0.1.6) and 9 backwards-compat tests
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| __snapshots__ | ||
| afbd | ||
| correctness | ||
| fixtures | ||
| fuzz | ||
| leak-fixtures | ||
| minimum | ||
| .gitignore | ||
| .python-version | ||
| build.rs | ||
| Cargo.lock | ||
| Cargo.toml | ||
| conftest.py | ||
| fuzz.py | ||
| generate_legacy_db.py | ||
| helpers.py | ||
| pyproject.toml | ||
| skip.test-correctness.py | ||
| sqlite-vec-internal.h | ||
| test-auxiliary.py | ||
| test-diskann.py | ||
| test-general.py | ||
| test-insert-delete.py | ||
| test-ivf-mutations.py | ||
| test-ivf-quantization.py | ||
| test-ivf.py | ||
| test-knn-distance-constraints.py | ||
| test-legacy-compat.py | ||
| test-loadable.py | ||
| test-metadata.py | ||
| test-partition-keys.py | ||
| test-rescore-mutations.py | ||
| test-rescore.py | ||
| test-unit.c | ||
| test-wasm.mjs | ||
| unittest.rs | ||
| utils.py | ||
| uv.lock | ||