# 2026-04-01 # # The author disclaims copyright to this source code. In place of # a legal notice, here is a blessing: # # May you do good and not evil. # May you find forgiveness for yourself and forgive others. # May you share freely, never taking more than you give. # #*********************************************************************** # # source [file join [file dirname [info script]] vec1_common.tcl] set testprefix vec1fault7 vec1_load db do_execsql_test 1 { CREATE VIRTUAL TABLE t1 USING vec1(v, b); INSERT INTO t1 VALUES(random_vector(8), 10); INSERT INTO t1 VALUES(random_vector(8), 20); INSERT INTO t1 VALUES(random_vector(8), 30); INSERT INTO t1 VALUES(random_vector(8), 40); INSERT INTO t1 VALUES(random_vector(8), 50); INSERT INTO t1(cmd, arg) VALUES('rebuild', '{index:"flat"}'); } faultsim_save_and_close do_faultsim_test 1 -faults oom* -prep { faultsim_restore_and_reopen vec1_load db } -body { execsql { SELECT rowid, length(v) FROM t1(random_vector(8), '{K:10}') WHERE b IN (10, 30, 50) ORDER BY 1; } } -test { faultsim_test_result {0 {1 32 3 32 5 32}} } do_execsql_test 2 { INSERT INTO t1(cmd, arg) VALUES('rebuild', '{index:"none"}'); } faultsim_save_and_close do_faultsim_test 2 -faults oom* -prep { faultsim_restore_and_reopen vec1_load db } -body { execsql { SELECT rowid FROM t1(random_vector(8), '{K:10}') WHERE b IN (10, 30, 50) ORDER BY 1; } } -test { faultsim_test_result {0 {1 3 5}} } finish_test