Andrew Kane
1d887d77ae
Removed IvfflatType from CheckCenters [skip ci]
2024-04-24 18:13:01 -07:00
Andrew Kane
5b4acae6ab
Added checkDuplicates to KmeansState [skip ci]
2024-04-24 18:04:26 -07:00
Andrew Kane
021bab3ed6
Removed IvfflatType from more functions [skip ci]
2024-04-24 17:45:48 -07:00
Andrew Kane
1a941b7698
Added KmeansState [skip ci]
2024-04-24 17:40:21 -07:00
Andrew Kane
3474fe8a66
Improved initialization of new centers [skip ci]
2024-04-24 16:45:16 -07:00
Andrew Kane
4aeb784e83
Improved QuickCenters [skip ci]
2024-04-24 16:38:14 -07:00
Andrew Kane
16de84bb63
Switched to Pointer [skip ci]
2024-04-24 16:27:54 -07:00
Andrew Kane
ad0ca72d01
Updated SumCenters and SetNewCenters to use float [skip ci]
2024-04-24 16:08:19 -07:00
Andrew Kane
de8685b155
Improved code [skip ci]
2024-04-24 15:57:29 -07:00
Andrew Kane
4e37cfc63c
Improved SetNewCenters [skip ci]
2024-04-24 15:56:50 -07:00
Andrew Kane
b2f2e933f7
Improved SumCenters [skip ci]
2024-04-24 15:50:23 -07:00
Andrew Kane
49763089ce
Improved SortVectorArray [skip ci]
2024-04-24 15:38:04 -07:00
Andrew Kane
520f6e7e4b
Moved IvfflatGetType [skip ci]
2024-04-24 15:34:10 -07:00
Andrew Kane
3f39a97160
Added support functions for max dimensions for ivfflat
2024-04-24 15:27:10 -07:00
Andrew Kane
a0716b187d
Updated comment [skip ci]
2024-04-24 15:09:04 -07:00
Andrew Kane
97d2aaf98c
Moved functions and synced upgrade script [skip ci]
2024-04-24 15:08:30 -07:00
Andrew Kane
6f333f9aa7
Renamed functions [skip ci]
2024-04-24 15:00:36 -07:00
Andrew Kane
21f004a30c
Removed type-specific code from HNSW [skip ci]
2024-04-24 14:53:45 -07:00
Heikki Linnakangas and Andrew Kane
cafd2e2918
Add comment to 'unused' fields
...
I just guessed that these exist for future extendability.
2024-04-24 13:05:02 -07:00
Andrew Kane
555cec570a
Switched to 0-based numbering for sparsevec on-disk format
2024-04-24 12:51:24 -07:00
Andrew Kane
4bc5aa8d10
Updated comments [skip ci]
2024-04-24 11:27:09 -07:00
Andrew Kane
3f2197fd7f
Added comments [skip ci]
2024-04-24 11:26:05 -07:00
Andrew Kane
8f728038b3
Increased max sparsevec dimensions to 1B [skip ci]
2024-04-24 11:17:25 -07:00
Andrew Kane
3bf18af035
Improved error messages for sparsevec input
2024-04-24 11:12:28 -07:00
Andrew Kane
ac9333cf63
Improved CI for Windows [skip ci]
2024-04-24 10:22:31 -07:00
Andrew Kane
c4ceb18ef9
Added comment [skip ci]
2024-04-24 10:13:50 -07:00
Andrew Kane
312b0c258e
Improved tests for sparsevec input [skip ci]
2024-04-24 09:58:27 -07:00
Andrew Kane
96e08e1b6d
Switched to strtoint for sparsevec input
2024-04-24 09:56:09 -07:00
Andrew Kane
540bdf784e
Added more tests for subvector function [skip ci]
2024-04-24 01:31:50 -07:00
Andrew Kane
745b5f0264
Added more tests for subvector function [skip ci]
2024-04-24 01:28:25 -07:00
Heikki Linnakangas and GitHub
e452e0afc7
Fix integer overflow in subvector() function ( #530 )
...
`end = start + count` can overflow if `start` is very large. That
leads to a segfault later in the function. Add test case for it.
2024-04-24 01:20:16 -07:00
Andrew Kane
d382db7ab0
Use VARSIZE_ANY instead of itemsize to avoid uninitialized bytes
2024-04-23 23:52:02 -07:00
Andrew Kane
2b4fcb1df0
Improved consistency of sparsevec_l1_distance with vector [skip ci]
2024-04-23 21:24:02 -07:00
Andrew Kane
b0323ae778
Improved consistency with vector [skip ci]
2024-04-23 21:13:00 -07:00
Andrew Kane
0906a9dd69
Improved consistency with vector [skip ci]
2024-04-23 21:11:27 -07:00
Andrew Kane
2ea421470e
Improved test [skip ci]
2024-04-23 20:42:30 -07:00
Andrew Kane
9474a82f9b
Improved test [skip ci]
2024-04-23 20:41:11 -07:00
Andrew Kane
61e7566ec7
Improved tests for l2_norm [skip ci]
2024-04-23 20:38:22 -07:00
Andrew Kane
bf87c5607c
Improved tests for sparsevec distance functions [skip ci]
2024-04-23 20:29:04 -07:00
Andrew Kane and Heikki Linnakangas
ef49591e75
Removed padding for sparsevec - #529
...
Co-authored-by: Heikki Linnakangas <[email protected] >
2024-04-23 20:07:24 -07:00
Andrew Kane
939bcbe0ca
Increased max sparsevec dimensions to 1M [skip ci]
2024-04-23 17:47:11 -07:00
Andrew Kane
1174298890
Moved type-specific code to separate functions
2024-04-23 16:32:10 -07:00
Andrew Kane
c0451618bd
DRY code for sorting vector arrays [skip ci]
2024-04-23 15:59:42 -07:00
Andrew Kane
70f768b611
Improved code [skip ci]
2024-04-23 15:53:12 -07:00
Andrew Kane
a816f615b1
Set length for newCenters and aggCenters [skip ci]
2024-04-23 15:47:04 -07:00
Andrew Kane
09036ccf63
Added safety check to NormCenters [skip ci]
2024-04-23 15:43:04 -07:00
Andrew Kane
30ee9fa123
Switched to support function for normalizing centers for k-means
2024-04-23 15:39:58 -07:00
Andrew Kane
8e5c290640
Moved type lookup to support functions - #527
2024-04-23 13:02:47 -07:00
Heikki Linnakangas and GitHub
2db96535f6
Forbid zero values in sparsevec's binary input function ( #528 )
...
The text input function simply left out any zero values, but the
binary input function did not. That's problematic because you end up
with an "unnormalized" sparse vector, which behaves in weird ways. At
least sparsevec_cmp_internal() expects both inputs to not contain
zeros.
The binary send function never produces such zero values, but an
external tool could. Or to test, you can use COPY TO (FORMAT BINARY),
use a hex editor to edit one of the values to be zero, and copy it
back with COPY FROM (FORMAT BINARY).
2024-04-23 09:13:53 -07:00
Andrew Kane
db3870b30b
Updated readme [skip ci]
2024-04-22 21:56:05 -07:00