Skip to content

Commit 6e67b36

Browse files
committed
add COUNT(*) test with partial index
1 parent 6fcc8c5 commit 6e67b36

1 file changed

Lines changed: 16 additions & 2 deletions

File tree

libsql-sqlite3/test/libsql_vector_index.test

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,20 @@ do_execsql_test vector-index-dont-affect-sql {
225225
SELECT rowid FROM t_vector_other_sql WHERE emb = vector('[7,8]');
226226
} {4 1 1 2 3 4}
227227

228+
do_execsql_test vector-partial-index-dont-affect-sql {
229+
CREATE TABLE t_vector_other_sql_part ( emb FLOAT32(2), t TEXT );
230+
INSERT INTO t_vector_other_sql_part VALUES (vector('[1,2]'), 'paper'), (vector('[3,4]'), 'journal');
231+
CREATE INDEX t_vector_other_sql_part_idx ON t_vector_other_sql_part(libsql_vector_idx(emb));
232+
INSERT INTO t_vector_other_sql_part VALUES (vector('[5,6]'), 'journal'), (vector('[7,8]'), 'paper');
233+
SELECT COUNT(*) FROM t_vector_other_sql_part;
234+
SELECT COUNT(*) FROM t_vector_other_sql_part WHERE emb = vector('[1,2]');
235+
SELECT COUNT(*) FROM t_vector_other_sql_part WHERE t = 'paper';
236+
SELECT rowid FROM t_vector_other_sql_part WHERE emb = vector('[1,2]');
237+
SELECT rowid FROM t_vector_other_sql_part WHERE emb = vector('[3,4]');
238+
SELECT rowid FROM t_vector_other_sql_part WHERE emb = vector('[5,6]');
239+
SELECT rowid FROM t_vector_other_sql_part WHERE emb = vector('[7,8]');
240+
} {4 1 2 1 2 3 4}
241+
228242
do_execsql_test vector-index-dont-affect-sql-pk {
229243
CREATE TABLE t_vector_other_sql_pk ( name TEXT PRIMARY KEY, emb FLOAT32(2) );
230244
INSERT INTO t_vector_other_sql_pk VALUES ('a', vector('[1,2]')), ('b', vector('[3,4]'));
@@ -307,6 +321,8 @@ do_execsql_test vector-f64-index {
307321
SELECT * FROM vector_top_k('t_f64_idx', vector64('[1,2]'), 2);
308322
} {1 2}
309323

324+
reset_db
325+
310326
do_execsql_test vector-partial {
311327
CREATE TABLE t_partial( name TEXT, type INT, v FLOAT32(3));
312328
INSERT INTO t_partial VALUES ( 'a', 0, vector('[1,2,3]') );
@@ -392,8 +408,6 @@ proc error_messages {sql} {
392408
set ret [sqlite3_errmsg db]
393409
}
394410

395-
reset_db
396-
397411
do_test vector-errors {
398412
set ret [list]
399413
lappend ret [error_messages {CREATE INDEX t_no_idx ON t_no( libsql_vector_idx(v) )}]

0 commit comments

Comments
 (0)