Commit Graph

1530 Commits

Author SHA1 Message Date
Andrew Kane
f52abfc26c Added more TAP tests [skip ci] 2024-10-13 19:14:09 -07:00
Andrew Kane
1066b4be60 Added intvec to distance functions test [skip ci] 2024-10-13 19:01:04 -07:00
Andrew Kane
6221779f74 Added casting to int[] [skip ci] 2024-10-13 18:55:12 -07:00
Andrew Kane
4765df1c50 Updated upgrade script [skip ci] 2024-10-13 18:46:45 -07:00
Andrew Kane
9514a7ffcd Added vector_dims [skip ci] 2024-10-13 18:46:09 -07:00
Andrew Kane
98deaa7407 Added intvec to inputs test [skip ci] 2024-10-13 18:41:57 -07:00
Andrew Kane
faa25d31f7 Added cast tests [skip ci] 2024-10-13 18:39:46 -07:00
Andrew Kane
39af767617 Fixed casting [skip ci] 2024-10-13 18:36:25 -07:00
Andrew Kane
3424f46298 Updated upgrade script [skip ci] 2024-10-13 18:27:27 -07:00
Andrew Kane
ab12f1622d Added more intvec functions [skip ci] 2024-10-13 18:14:31 -07:00
Andrew Kane
2fb71a6183 Updated readme [skip ci] 2024-10-13 18:02:43 -07:00
Andrew Kane
67b4ba5a14 Updated readme [skip ci] 2024-09-27 21:30:53 -07:00
Andrew Kane
8597eb79aa Restored isnan check [skip ci] 2024-09-23 13:44:29 -07:00
Andrew Kane
ffca8e720c Exclude zero vectors for cosine distance to be consistent with other types [skip ci] 2024-09-23 13:35:36 -07:00
Andrew Kane
0296a08ccf Added L1 distance to test [skip ci] 2024-09-23 13:25:22 -07:00
Andrew Kane
b067b5f073 Added intvec type 2024-09-23 13:20:49 -07:00
Andrew Kane
97cf990e0f Free TupleDesc [skip ci] 2024-09-21 19:15:34 -07:00
Andrew Kane
55dc735e1a Moved allocations out of GetScanItems [skip ci] 2024-09-21 19:10:25 -07:00
Andrew Kane
be4e9a9df2 Added macros for IvfflatScanList [skip ci] 2024-09-21 18:10:37 -07:00
Andrew Kane
d5e8fc96a5 Changed HnswPairingHeapNode to HnswSearchCandidate to reduce allocations and improve code 2024-09-21 12:07:44 -07:00
Andrew Kane
6d2af6d3f9 Improved code [skip ci] 2024-09-20 15:21:57 -07:00
Andrew Kane
a6ab5d07c0 Fixed CI 2024-09-19 20:50:51 -07:00
Andrew Kane
aa77346103 Improved code [skip ci] 2024-09-19 19:57:16 -07:00
Andrew Kane
b0da2d95d9 Fixed array_to_sparsevec on Windows [skip ci] 2024-09-19 19:52:16 -07:00
Andrew Kane
3fb05eb847 Added casts for arrays to sparsevec - #604
Co-authored-by: Narek Galstyan <narekg@berkeley.edu>
Co-authored-by: Di Qi <di@lantern.dev>
2024-09-19 19:17:05 -07:00
Andrew Kane
b738ffecc1 Dropped support for Postgres 12 2024-09-19 18:13:54 -07:00
Heikki Linnakangas
7117513532 Add error codes to a few errors (#657)
With elog(), you get XX000 "internal_error", which sounds scary.

It's not self-evident what the right error codes for some of these
errors are, but I tried to use my best judgment.
2024-09-19 18:04:23 -07:00
Andrew Kane
85d877d540 Updated changelog [skip ci] 2024-09-19 18:03:20 -07:00
Jonathan S. Katz
05fb382031 Swap max costing values to align with upstream guidance (#658)
A feature targeted for PostgreSQL 18 (postgres/postgres@e2225346)
that makes optimizations around disabled path nodes impacted pgvector
such that PostgreSQL would choose to perform an index scan when it
should have used a different scan (e.g. `SELECT count(*) FROM table`).
Per upstream guidance[1], the recommendation is to switch to using
`get_float8_infinity()`, which achieves the same behavior in backbranches,
and can be adapated to work with the new behavior introduced in PostgreSQL 18.

[1] https://www.postgresql.org/message-id/2281822.1724441531%40sss.pgh.pa.us
2024-09-19 18:01:59 -07:00
Andrew Kane
8e1853fbf3 Improved variable name [skip ci] 2024-09-19 15:09:40 -07:00
Andrew Kane
f9d68a061a Simplified HnswLoadUnvisitedFromMemory [skip ci] 2024-09-19 04:39:46 -07:00
Andrew Kane
4f8ab574c9 Simplified CountElement [skip ci] 2024-09-19 04:32:38 -07:00
Andrew Kane
a15806196e Keep scan-build happy 2024-09-19 04:02:09 -07:00
Andrew Kane
5c9429a0f8 Reduced memory usage for HNSW index scans 2024-09-19 03:27:35 -07:00
Andrew Kane
4b44d6e745 Updated changelog [skip ci] 2024-09-19 02:42:33 -07:00
Andrew Kane
16ca608f42 Updated AddToVisited to use HnswElementPtr 2024-09-19 02:41:20 -07:00
Andrew Kane
8dde14a736 Reduced memory usage for HNSW index scans
Co-authored-by: Heikki Linnakangas <heikki.linnakangas@iki.fi>
2024-09-19 02:17:51 -07:00
Andrew Kane
d74d3065bc Reduced allocations for pairing heap 2024-09-19 01:59:46 -07:00
Andrew Kane
a1b80faa67 Updated readme 2024-09-05 23:13:12 -07:00
Andrew Kane
4af5a127e0 Revert "Improved cleanup for IVFFlat index scans [skip ci]"
This reverts commit da7d3959a3.
2024-09-02 01:52:28 -07:00
Andrew Kane
d02d71a398 Fixed CI 2024-09-02 01:44:03 -07:00
Andrew Kane
2aca04b8de Updated links [skip ci] 2024-08-28 13:39:03 -07:00
Andrew Kane
e47984e616 Reset tuple sort for Postgres 12 [skip ci] 2024-08-24 22:10:26 -07:00
Andrew Kane
da7d3959a3 Improved cleanup for IVFFlat index scans [skip ci] 2024-08-24 21:59:44 -07:00
Andrew Kane
dadbbc3758 Renamed InitSortState to InitScanSortState [skip ci] 2024-08-24 21:53:15 -07:00
Andrew Kane
6af0a43d62 Added InitBuildSortState function [skip ci] 2024-08-24 21:50:31 -07:00
Andrew Kane
ffcb90d094 Added InitSortState function [skip ci] 2024-08-24 21:42:18 -07:00
Andrew Kane
8a312c3c8e Added memory usage for IVFFlat index scans [skip ci] 2024-08-24 21:30:40 -07:00
Andrew Kane
5d86b177ab Fixed -DIVFFLAT_MEMORY [skip ci] 2024-08-24 20:56:33 -07:00
Andrew Kane
ea99957fae Added fields to IndexAmRoutine 2024-08-22 20:39:16 -07:00