diff --git a/sqlite-vec.c b/sqlite-vec.c index 2b05b8a..d98a852 100644 --- a/sqlite-vec.c +++ b/sqlite-vec.c @@ -6672,6 +6672,7 @@ int vec0Update_Insert(sqlite3_vtab *pVTab, int argc, sqlite3_value **argv, } int partition_key_idx = p->user_column_idxs[i]; partitionKeyValues[partition_key_idx] = argv[2+VEC0_COLUMN_USERN_START + i]; + int new_value_type = sqlite3_value_type(partitionKeyValues[partition_key_idx]); if((new_value_type != SQLITE_NULL) && (new_value_type != p->paritition_columns[partition_key_idx].type)) { // IMP: V11454_28292 @@ -6683,6 +6684,8 @@ int vec0Update_Insert(sqlite3_vtab *pVTab, int argc, sqlite3_value **argv, type_name(p->paritition_columns[partition_key_idx].type), type_name(new_value_type) ); + rc = SQLITE_ERROR; + goto cleanup; } }