Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

S3 snapshot manager #4109 #4149

Closed
wants to merge 1,627 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1627 commits
Select commit Hold shift + click to select a range
ad606e7
Report shard transfer progress (#3555)
xzfc Feb 23, 2024
01e8322
Test payload index overwrite (#3655)
xzfc Feb 23, 2024
0ed86ce
Introduce JsonPathString (#3674)
xzfc Feb 23, 2024
44fa95f
Shard diff transfer integration (#3509)
timvisee Feb 23, 2024
fb48bdc
Revert some unnecessary changes to `collections_internal_service.prot…
ffuugoo Feb 23, 2024
ca2cd46
Drop unused Deserialize (#3680)
xzfc Feb 23, 2024
420d46f
Add basic integration tests for WAL delta transfer (#3679)
timvisee Feb 26, 2024
6b60b33
Don't rebuild HNSW when updating non-indexed fields (#3611)
xzfc Feb 26, 2024
af8e42b
refactor: dyn -> impl in vector storage (#3690)
coszio Feb 26, 2024
2d42bd5
Bump serde from 1.0.196 to 1.0.197 (#3693)
dependabot[bot] Feb 27, 2024
ba168ce
Bump serde_json from 1.0.113 to 1.0.114 (#3694)
dependabot[bot] Feb 27, 2024
52ac48d
Bump ahash from 0.8.8 to 0.8.9 (#3695)
dependabot[bot] Feb 27, 2024
588398b
Bump geo from 0.27.0 to 0.28.0 (#3692)
dependabot[bot] Feb 27, 2024
00e7a96
Fixups in set_value_to_json_map (#3696)
xzfc Feb 27, 2024
bbd6bb3
Implement JsonPathV2 (#3697)
xzfc Feb 27, 2024
6b9c25c
Update Tokion 1.36 (#3701)
agourlay Feb 27, 2024
78cc433
Don't produce histograms in /telemetry JSON response (#3708)
xzfc Feb 27, 2024
758779c
Use DenseVector alias where possible (#3705)
agourlay Feb 28, 2024
1a356d0
Remove top level benches (#3706)
agourlay Feb 28, 2024
35a59eb
Fix flaky invalid URI snapshot test (#3704)
timvisee Feb 28, 2024
d5c089a
Clearer names for dense storage implementations (#3712)
agourlay Feb 28, 2024
7b4469d
Text index inverted index compression (#3563)
IvanPleshkov Feb 28, 2024
fd442ac
Enforce that storage compatibility validates master data on dev (#3717)
agourlay Feb 28, 2024
a56277d
Cover mmap storages in compatibility tests (#3715)
agourlay Feb 28, 2024
61fa4e7
Snapshot store (#3643)
AlexandruCihodaru Feb 28, 2024
cba268c
Diff transfer improvements (#3645)
ffuugoo Feb 29, 2024
8d8f834
Switch to JsonPathV2 (#3709)
xzfc Feb 29, 2024
5deee2a
OrderBy: Allow integer in `StartFrom` (#3726)
coszio Feb 29, 2024
e39c481
Add consensus operation to restart shard transfer (#3703)
timvisee Feb 29, 2024
4d545bb
Use new safe_to_set/safe_to_remove functions (#3722)
xzfc Feb 29, 2024
8c66d9d
Add WAL delta consensus test for recovering chain of nodes (#3721)
timvisee Feb 29, 2024
7522d89
When restarting shard transfer, keep sync if old transfer was sync (#…
timvisee Feb 29, 2024
36d5641
Datetimes: Accept timezones without colon separator (#3729)
coszio Feb 29, 2024
07d973f
deserialize into timezone-aware date (#3730)
coszio Feb 29, 2024
5f7e053
Logic tweaks for WAL diff shard transfer (#3719)
ffuugoo Mar 1, 2024
3d3d8e1
Chore: Remove issues API from openapi spec (#3735)
coszio Mar 1, 2024
a097011
Fix state switching order in WAL delta transfer: forward proxy vs par…
timvisee Mar 1, 2024
06e8101
Fix: Validate datetime_range in FieldCondition validation (#3742)
coszio Mar 1, 2024
b5236ef
Backward compatibility via s3 (#3748)
generall Mar 4, 2024
28a65f4
Fix batch_requests (#3745)
xzfc Mar 4, 2024
f0c8350
Add unique token to clock tag, detect duplicate operations (#3739)
timvisee Mar 4, 2024
4e234d2
Add peer metadata to consensus, tracking Qdrant versions (#3702)
timvisee Mar 4, 2024
f592768
avoid assert data1 == data2 (#3754)
generall Mar 4, 2024
5766f03
remove checksum path parameter for snapshot recovery in openapi (#3758)
IvanPleshkov Mar 4, 2024
e8c03ff
Add `ShardTransferOperations::RecoveryToPartial` (#3757)
ffuugoo Mar 4, 2024
c6b7b19
remove ArcAtomicRefCellIterator (#3770)
IvanPleshkov Mar 4, 2024
aafbd01
Bump ahash from 0.8.9 to 0.8.11 (#3759)
dependabot[bot] Mar 5, 2024
327acd7
Bump rayon from 1.8.1 to 1.9.0 (#3760)
dependabot[bot] Mar 5, 2024
00795e5
Bump rustls-pemfile from 2.1.0 to 2.1.1 (#3762)
dependabot[bot] Mar 5, 2024
8cfe04f
Bump arc-swap from 1.6.0 to 1.7.0 (#3764)
dependabot[bot] Mar 5, 2024
2429a81
Bump thread-priority from 0.15.1 to 0.16.0 (#3766)
dependabot[bot] Mar 5, 2024
843e247
Bump sysinfo from 0.30.5 to 0.30.6 (#3767)
dependabot[bot] Mar 5, 2024
1c1b74e
Bump tempfile from 3.10.0 to 3.10.1 (#3763)
dependabot[bot] Mar 5, 2024
b6d9044
Bump walkdir from 2.4.0 to 2.5.0 (#3768)
dependabot[bot] Mar 5, 2024
ae92ec9
Bump indexmap from 2.2.3 to 2.2.5 (#3765)
dependabot[bot] Mar 5, 2024
02aef54
Bump mio from 0.8.9 to 0.8.11 (#3771)
dependabot[bot] Mar 5, 2024
3ab30d3
Report basic progress for WAL delta and snapshot transfer (#3769)
timvisee Mar 5, 2024
6851ec2
For WAL delta test assertions, use transfer status rather than logs (…
timvisee Mar 5, 2024
e02a313
Consensus tests capture stdout (#3753)
agourlay Mar 5, 2024
413b87a
RBAC: Initial implementation for decoding `Claims` (#3778)
coszio Mar 6, 2024
35128df
Merge `wrapped_shard` and `remote_shard` update results in `ForwarPro…
ffuugoo Mar 7, 2024
5be063b
Allow paths starting with numbers (#3788)
xzfc Mar 7, 2024
fa9ac80
Update Rustls 0.22 (#3780)
agourlay Mar 7, 2024
80bc4c7
refactor: use `FilterLayer` from `tower` (#3785)
coszio Mar 7, 2024
051ddd2
Bump sysinfo from 0.30.6 to 0.30.7 (#3808)
dependabot[bot] Mar 12, 2024
e8260c0
Bump env_logger from 0.11.2 to 0.11.3 (#3810)
dependabot[bot] Mar 12, 2024
d1e6897
Bump clap from 4.5.1 to 4.5.2 (#3811)
dependabot[bot] Mar 12, 2024
b253ca0
Fix Clippy 1.77 (#3817)
agourlay Mar 12, 2024
8d70104
Detect malformed collection during storage compatibility (#3819)
agourlay Mar 12, 2024
0da5f32
Managing assigned ports in the consensus tests #2610 (#2831)
kwkr Mar 13, 2024
38f9b9f
Update storage compatibility version (#3816)
agourlay Mar 13, 2024
1445ab2
Fix `GraphLinksConverter::serialize_to` data alignment issues (#3806)
ffuugoo Mar 13, 2024
9c6611e
Try to make `/readyz` check more reliable (#3776)
ffuugoo Mar 13, 2024
bd4104c
attempt to fix flacky test_peer_snapshot_bootstrap (#3824)
generall Mar 14, 2024
1b1ecc4
Use RBAC in middleware (#3813)
xzfc Mar 14, 2024
e343e57
Attempt to improve WAL delta reliability: more throttling (#3790)
timvisee Mar 15, 2024
9c8c596
Add WAL delta consensus test for aborting and retrying diff transfer …
timvisee Mar 15, 2024
639d04a
Remove unused tests (#3833)
0xqd Mar 15, 2024
c2aa229
Fix optimizations config (#3832)
generall Mar 15, 2024
4547606
Only flush clock maps to disk if they have changed (#3835)
timvisee Mar 15, 2024
c1e32cf
Use rest vector type as non segment part (#3829)
IvanPleshkov Mar 18, 2024
81faf90
chore: remove repetitive word (#3846)
InventiveCoder Mar 18, 2024
ee20b1a
Remove duplication in cosine similarity (#3843)
agourlay Mar 18, 2024
19c7273
refactor: Update to Chrono 0.4.35 (#3827)
Anush008 Mar 18, 2024
144e8aa
Introduce MultiDenseVector to models (#3826)
agourlay Mar 18, 2024
61e3ebf
Remove unused function internal VectorStruct::is_empty (#3850)
agourlay Mar 18, 2024
e47c1b2
Better error message on inserting wrong-formatted point ID (#3837)
gsaivinay Mar 18, 2024
bdf5774
CowVector from slice does not need to allocate (#3852)
agourlay Mar 18, 2024
f21892a
Add MultiDense vector to CowVector (#3851)
agourlay Mar 18, 2024
ec72d06
RBAC: Route `Claims` into `TableOfContent` for points API (#3801)
coszio Mar 18, 2024
78f1320
Fix arbitrary path traversal vulnerability in full snapshot REST API …
timvisee Mar 18, 2024
960b041
Bump anyhow from 1.0.80 to 1.0.81 (#3853)
dependabot[bot] Mar 18, 2024
cfbeef2
Bump async-recursion from 1.0.5 to 1.1.0 (#3854)
dependabot[bot] Mar 18, 2024
8f24f0a
Bump geohash from 0.13.0 to 0.13.1 (#3857)
dependabot[bot] Mar 18, 2024
e9a5958
Bump thiserror from 1.0.57 to 1.0.58 (#3858)
dependabot[bot] Mar 18, 2024
c2e8565
Bump async-trait from 0.1.77 to 0.1.78 (#3859)
dependabot[bot] Mar 18, 2024
3014ac8
Bump clap from 4.5.2 to 4.5.3 (#3855)
dependabot[bot] Mar 19, 2024
e6fdf43
Use common helpers in tonic collections API (#3860)
xzfc Mar 19, 2024
836bf2a
Remove unused VectorStruct functions (#3862)
agourlay Mar 19, 2024
2c94d7c
Implement `collection` claims for points API (#3849)
xzfc Mar 19, 2024
a188598
Extend shard snapshot security tests (#3867)
timvisee Mar 19, 2024
82ef966
Remove duplicated VectorRef conversion (#3864)
agourlay Mar 19, 2024
89648ab
Update peer metadata through consensus for 1.9 (#3792)
timvisee Mar 19, 2024
d7c8880
Switch to Recovery state, deprecated PartialSnapshot, for Qdrant 1.9 …
timvisee Mar 19, 2024
833d76b
Deprecate SnapshotRecovered consensus call, switch to RecoveryToPart…
timvisee Mar 19, 2024
2724ab6
Make shard diff transfer fallback to different method through consens…
timvisee Mar 19, 2024
174fe28
Remove duplicate VectorRef ownership conversions (#3869)
agourlay Mar 19, 2024
230f307
Use WAL delta transfer by default for shard recovery for 1.9 (#3800)
timvisee Mar 19, 2024
370ba39
Fix compilation error due to incorrect PeerMetadata import (#3871)
timvisee Mar 19, 2024
270e884
Rest decouple collection record type (#3865)
IvanPleshkov Mar 19, 2024
0eb3fac
Remove duplicated conversions in NamedVectors (#3872)
agourlay Mar 19, 2024
f24f65a
Log errors for snapshot operations (#3876)
agourlay Mar 20, 2024
3884e98
Remove unecessary Clippy allows (#3879)
agourlay Mar 20, 2024
88fba0c
Define Qdrant semver version as string (#3877)
timvisee Mar 20, 2024
a3abcef
Change dev version to 1.9.0-dev (#3881)
timvisee Mar 20, 2024
8a407b2
Multi dense vector simple storage (#3718)
agourlay Mar 20, 2024
10ec37b
RBAC support for collections API (#3863)
xzfc Mar 20, 2024
9d71e2c
colbert query scorers (#3713)
IvanPleshkov Mar 21, 2024
e2336d1
Test WAL delta resolution with gaps, improve resolution logic (#3882)
timvisee Mar 21, 2024
70414af
Expose the WAL delta transfer method in our OpenAPI specification (#3…
timvisee Mar 21, 2024
1fbcebc
Multivector hnsw test (#3880)
IvanPleshkov Mar 21, 2024
ea2a09b
RBAC support for snapshots API (#3887)
xzfc Mar 21, 2024
0211554
Remove unused actix-web-httpauth (#3888)
agourlay Mar 21, 2024
5bf1a11
Test MultiDense storage via raw scorer (#3885)
agourlay Mar 21, 2024
8a01c7e
RBAC: stateful validation with `value_exists` (#3874)
coszio Mar 21, 2024
65eee85
allow multiple mathes in jwt validation check (#3894)
generall Mar 22, 2024
e090dc0
Refactor vector storage infra to be generic over vector element type …
generall Mar 25, 2024
2a6a283
[RBAC] Access control inside table of content (#3896)
generall Mar 25, 2024
c62b123
Refactor actix response handlers (#3907)
xzfc Mar 25, 2024
63fb187
RBAC support for remaining APIs (#3908)
xzfc Mar 25, 2024
9ec8e0b
Bump jsonwebtoken from 9.2.0 to 9.3.0 (#3910)
dependabot[bot] Mar 26, 2024
4851d97
Bump smallvec from 1.13.1 to 1.13.2 (#3911)
dependabot[bot] Mar 26, 2024
3639ae6
Bump uuid from 1.7.0 to 1.8.0 (#3912)
dependabot[bot] Mar 26, 2024
c08a763
Bump async-trait from 0.1.78 to 0.1.79 (#3913)
dependabot[bot] Mar 26, 2024
742f2fe
Bump rustls-pki-types from 1.3.1 to 1.4.0 (#3914)
dependabot[bot] Mar 26, 2024
f0b7433
Bump charabia from 0.8.7 to 0.8.8 (#3916)
dependabot[bot] Mar 26, 2024
a0e72c8
Bump rayon from 1.9.0 to 1.10.0 (#3917)
dependabot[bot] Mar 26, 2024
8b15035
Bump lukemathwalker/cargo-chef (#3909)
dependabot[bot] Mar 26, 2024
a3801a0
Bump indexmap from 2.2.5 to 2.2.6 (#3915)
dependabot[bot] Mar 26, 2024
8288d17
Native async recursion with Rust 1.77 (#3889)
agourlay Mar 26, 2024
d82e798
make sure that collection files are deleted even if the collection is…
generall Mar 26, 2024
0e54e19
Bump bytes from 1.5.0 to 1.6.0 (#3918)
dependabot[bot] Mar 26, 2024
c22a379
Bump arc-swap from 1.7.0 to 1.7.1 (#3919)
dependabot[bot] Mar 26, 2024
d9deb40
Cancel shard transfers when shard is deleted (#3784)
ffuugoo Mar 26, 2024
265bfa2
Removes method from abort shard transfer operation (#3803)
RPallas92 Mar 26, 2024
97241d0
add config property to disable jwt by default (#3923)
generall Mar 27, 2024
bc2a224
Minor code cleanup for #3882 (#3927)
ffuugoo Mar 27, 2024
20e8615
RBAC: Introduce Access object and use it (#3925)
xzfc Mar 27, 2024
20a11c5
Add context to `Collection::create_snapshot` errors (#3929)
ffuugoo Mar 27, 2024
6cfc97c
Stabilize vector renormalisation (#3928)
timvisee Mar 27, 2024
99db4b8
implement conversions for primitive byte storage type (#3924)
generall Mar 27, 2024
70ba047
RBAC: introduce CollectionPass (#3932)
xzfc Mar 28, 2024
b4b5b01
Fix JSON path string quoting check (#3948)
timvisee Apr 1, 2024
5f37323
Bump serde_json from 1.0.114 to 1.0.115 (#3953)
dependabot[bot] Apr 2, 2024
32bce8d
Bump chrono from 0.4.35 to 0.4.37 (#3952)
dependabot[bot] Apr 2, 2024
406e95a
Bump clap from 4.5.3 to 4.5.4 (#3950)
dependabot[bot] Apr 2, 2024
46ff4c1
Bump rustls-pki-types from 1.4.0 to 1.4.1 (#3951)
dependabot[bot] Apr 2, 2024
7dc6ad0
feat: Remove existing buildx containers before building dev branch (#…
KShivendu Apr 2, 2024
1fb2217
keep jemalloc dependency only for builds on aarch64 and amd64 platfor…
abhishek818 Apr 3, 2024
eda7f8a
RBAC: new JWT schema (#3941)
xzfc Apr 3, 2024
74b5bd2
Fix gRPC discovery with sparse vectors (#3965)
agourlay Apr 3, 2024
8560f15
Add grey collection status (#3962)
timvisee Apr 4, 2024
5d74b77
Non-blocking snapshots (#3420)
timvisee Apr 4, 2024
03190e8
fix: Dev container build workflow (#3967)
KShivendu Apr 4, 2024
b490008
Multivec knob for SegmentConfig (#3963)
agourlay Apr 4, 2024
f0ab5fd
RBAC: Improve errors (#3968)
xzfc Apr 4, 2024
355adb3
Only report pending optimizations status if we never triggered optimi…
timvisee Apr 5, 2024
47dc275
remove consensus op from await queue if it timed out (#3975)
generall Apr 5, 2024
3bb9fa0
force wait for updates in forward proxy (#3980)
generall Apr 5, 2024
54d28d2
Integrate Multivector at segment level (#3973)
agourlay Apr 8, 2024
4274aec
[RBAC] remove option to specify multiple collection names in one rule…
generall Apr 8, 2024
28dee38
RBAC: require access token in ToC functions (#3972)
xzfc Apr 8, 2024
15479a4
use StrictCollectionPath for uploading collection snapshot (#3991)
generall Apr 9, 2024
ff695a7
change order of locking to prevent a situation where point is marked …
generall Apr 9, 2024
64c0543
When reading points, go over non-appendable segments first (#3995)
timvisee Apr 9, 2024
f539f0a
Bump rustls-pemfile from 2.1.1 to 2.1.2 (#3987)
dependabot[bot] Apr 9, 2024
158e32d
Bump lukemathwalker/cargo-chef (#3986)
dependabot[bot] Apr 9, 2024
76181fe
Bump sysinfo from 0.30.7 to 0.30.9 (#3989)
dependabot[bot] Apr 9, 2024
7364d65
Bump h2 to 0.3.26 (#4003)
timvisee Apr 10, 2024
107c985
On read operations, go over non-appendable segments first (#3996)
timvisee Apr 10, 2024
e643a11
Use idiomatic Rust naming (#4007)
agourlay Apr 10, 2024
1944e4a
Flatten representation for MultiDenseVectors (#4004)
agourlay Apr 11, 2024
fecdeef
Update Reqwest and promote to workspace (#4011)
agourlay Apr 11, 2024
1ef2515
Bump Tokio 1.37 (#4012)
agourlay Apr 11, 2024
4ff2fb8
promote Validator to workspace (#4013)
agourlay Apr 11, 2024
ebc9ba0
Fix indexed-only behavior for proxy shard (#3998)
generall Apr 11, 2024
af05555
Update rustls 0.22.3 (#4016)
agourlay Apr 11, 2024
82511e6
RBAC: [tests] exhaustive access tests (#3961)
coszio Apr 11, 2024
d4fb27e
RBAC: add tests (#4006)
xzfc Apr 11, 2024
c1c1ebf
remove search method from serment trait to simplify usage in tests an…
generall Apr 11, 2024
316d0fa
Introduce multi vector search benchmark (#4005)
agourlay Apr 12, 2024
5609590
Bump idna to 3.7 (#4021)
timvisee Apr 12, 2024
d71e8ae
test of stream shard transfer consistency (#3977)
generall Apr 12, 2024
0b89edb
Optimize colBERT maxsim scoring (#4023)
agourlay Apr 12, 2024
885664e
Decouple named vector struct (#4014)
agourlay Apr 12, 2024
d208367
RBAC: [tests] Add payload constraint spec (#4008)
coszio Apr 12, 2024
8a30d00
Do do not delete data of concurrent collection creation (#4029)
agourlay Apr 12, 2024
2a00383
RBAC: Restructure jwt tests (#4017)
coszio Apr 12, 2024
a5ec30f
Applying the optimization options (#3982)
kozistr Apr 13, 2024
0fcc002
Fix multivector flaky tests (#4036)
agourlay Apr 15, 2024
03166ce
Missing points and flush (#4034)
generall Apr 15, 2024
ee7a31e
Fix snapshot tar symlinks validation (#4033)
generall Apr 15, 2024
28f2358
Make read-only api key behave the same as global read-only token (#4038)
coszio Apr 15, 2024
84b57f5
Bump lukemathwalker/cargo-chef (#4039)
dependabot[bot] Apr 16, 2024
1074260
Bump anyhow from 1.0.81 to 1.0.82 (#4040)
dependabot[bot] Apr 16, 2024
188a1ac
Bump sysinfo from 0.30.9 to 0.30.10 (#4042)
dependabot[bot] Apr 16, 2024
eb52f59
Bump async-trait from 0.1.79 to 0.1.80 (#4043)
dependabot[bot] Apr 16, 2024
c513359
Bump rstest from 0.18.2 to 0.19.0 (#4044)
dependabot[bot] Apr 16, 2024
575ea23
Bump chrono from 0.4.37 to 0.4.38 (#4045)
dependabot[bot] Apr 16, 2024
3064ed9
Remove api-key path matching (#4046)
coszio Apr 16, 2024
c6e7c6f
Fix average sparse vector recommendation (#4047)
agourlay Apr 17, 2024
c3bb009
Separate segment and point level version handling (#4057)
timvisee Apr 17, 2024
71f9d4b
Always flush both `wrapped` and `write` segments during `ProxySegment…
ffuugoo Apr 17, 2024
112f56b
refactor segment holder to separate appendable and non-appendable seg…
generall Apr 17, 2024
3d8b553
Update docs to mention safer production practices (#4028)
mac-chaffee Apr 17, 2024
abe601c
Update crc32c 0.6.5 (#4059)
agourlay Apr 17, 2024
025ae07
byte metrics simd acceleration (#3976)
IvanPleshkov Apr 17, 2024
e0ee98d
[order-by] Fix remote shard calling (#4054)
coszio Apr 17, 2024
224e4f6
Byte storage integration into segment (#4049)
IvanPleshkov Apr 17, 2024
244b7cc
Test point version handling and moving correctness across segments (#…
timvisee Apr 18, 2024
438479b
For non-blocking snapshots, release segments one by one right after u…
timvisee Apr 18, 2024
cd72140
Fix compilation error on dev due to missing datatype field (#4062)
timvisee Apr 18, 2024
d67bee1
Fix different wal crate versions (#4064)
agourlay Apr 18, 2024
20eb2e1
remove usage of vectors_count (#4052)
generall Apr 18, 2024
44f2744
Byte storage api support (#4065)
generall Apr 18, 2024
b0c51ba
Add simple `ProxySegment::flush` unit-test (#4066)
ffuugoo Apr 18, 2024
60998e9
Fix Arc unwrap function not respecting timeout (#4067)
timvisee Apr 18, 2024
528d759
byte storage quantization fix and test (#4063)
IvanPleshkov Apr 19, 2024
bfd5871
remove unexistent consts (#4070)
coszio Apr 19, 2024
23971e7
Add missing validation for gRPC UpsertPoints (#4074)
agourlay Apr 19, 2024
abcd2af
Median based TopK for sparse vectors scoring (#4037)
agourlay Apr 19, 2024
d78053a
Bump RusTLS to 0.22.4 (#4078)
timvisee Apr 22, 2024
6d23dd8
Bump idna from 3.6 to 3.7 in /tests/consensus_tests (#4080)
timvisee Apr 22, 2024
39b8c75
When reading with a filter, go over non-appendable segments first (#4…
timvisee Apr 22, 2024
2de50f9
Bump dev version to 1.9.1-dev (#4085)
timvisee Apr 22, 2024
55d1896
Bump serde_json from 1.0.115 to 1.0.116 (#4088)
dependabot[bot] Apr 23, 2024
12f4b2e
Bump reqwest from 0.12.3 to 0.12.4 (#4092)
dependabot[bot] Apr 23, 2024
150dfb6
Bump thiserror from 1.0.58 to 1.0.59 (#4090)
dependabot[bot] Apr 23, 2024
d6313c7
Bump sysinfo from 0.30.10 to 0.30.11 (#4093)
dependabot[bot] Apr 23, 2024
ec3309a
Bump serial_test from 3.0.0 to 3.1.0 (#4094)
dependabot[bot] Apr 23, 2024
5a400c8
Bump io-uring from 0.6.3 to 0.6.4 (#4096)
dependabot[bot] Apr 23, 2024
5ecdaf8
Bump rmp-serde from 1.1.2 to 1.2.0 (#4095)
dependabot[bot] Apr 23, 2024
1b78c48
Bump thread-priority from 0.16.0 to 1.0.0 (#4091)
dependabot[bot] Apr 23, 2024
6215ed3
Bump serde from 1.0.197 to 1.0.198 (#4089)
dependabot[bot] Apr 23, 2024
33a430b
Clean tar dependency management (#4097)
agourlay Apr 23, 2024
3b82c86
add 'comment' field to collection apis (#3957)
abhishek818 Apr 24, 2024
3d6a907
fix the test case for 'comment' field
abhishek818 Apr 24, 2024
8ce3db8
keep comment field optional and generate grpc docs
abhishek818 Apr 25, 2024
a03e0b7
generate open api specs for 'comment' field
abhishek818 Apr 26, 2024
43129fc
initial s3 storage setup for snapshots, fixes #4109
abhishek818 May 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 11 additions & 1 deletion .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -202,12 +202,22 @@
"contributions": [
"code"
]
},
{
"login": "erare-humanum",
"name": "erare-humanum",
"avatar_url": "https://avatars.githubusercontent.com/u/116254494?v=4",
"profile": "https://github.com/erare-humanum",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7,
"projectName": "qdrant",
"projectOwner": "qdrant",
"repoType": "github",
"repoHost": "https://github.com",
"skipCi": true
"skipCi": true,
"commitConvention": "angular"
}
3 changes: 0 additions & 3 deletions .cargo/config.toml

This file was deleted.

6 changes: 6 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[codespell]
# openapi.json is typically a released version and could carry old typos
skip = .git,*.pdf,*.svg,openapi.json,key.pem,Cargo.lock
# hel - Query token
# generall - the boss
ignore-words-list = crate,hel,generall
12 changes: 12 additions & 0 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[profile.ci]
# Retry tests before failing them.
retries = { backoff = "exponential", count = 2, delay = "2s" }
# Do not cancel the test run on the first failure.
fail-fast = false
# Print out output for failing tests as soon as they fail, and also at the end
# of the run (for easy scrollability).
failure-output = "immediate-final"

# save junit report
[profile.ci.junit]
path = "junit.xml"
3 changes: 2 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@ lib/segment/target
lib/api/target
lib/collection/target
lib/storage/target
openapi/tests/
*.tar
.git
.github/
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
tests/storage-compat/storage.tar.bz2 filter=lfs diff=lfs merge=lfs -text
tests/storage-compat/collection.snapshot.gz filter=lfs diff=lfs merge=lfs -text
tests/low-ram/storage.tar.xz filter=lfs diff=lfs merge=lfs -text
tests/storage-compat/full-snapshot.snapshot.gz filter=lfs diff=lfs merge=lfs -text
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ assignees: ''
3.
4.

<!--- Please make sure to include the data which could be used to reproduce the problem -->


## Expected Behavior
<!--- Tell us what should happen -->

Expand Down
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/flaky_test.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
title: Flaky test `{{ env.TEST_NAME }}`
---

## Last report

### System error

```text
{{ env.SYSTEM_ERROR }}
```

### Context

Date: {{ date | date('DD.MM.YYYY HH:mm') }}

[Flaky failure run](https://github.com/{{ env.REPOSITORY }}/actions/runs/{{ env.RUN_ID }}/job/{{ env.JOB_ID }})

[Commit](https://github.com/{{ env.REPOSITORY }}/tree/{{ env.SHA }})

OS: {{ env.OS }}

Branch: {{ env.BRANCH }}

{{ env.PR }}
5 changes: 3 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
### All Submissions:

* [ ] Contributions should target the `dev` branch. Did you create your branch from `dev`?
* [ ] Have you followed the guidelines in our Contributing document?
* [ ] Have you checked to ensure there aren't other open [Pull Requests](../../../pulls) for the same update/change?

Expand All @@ -8,8 +9,8 @@
### New Feature Submissions:

1. [ ] Does your submission pass tests?
2. [ ] Have you lint your code locally using ``cargo fmt`` command prior to submission?
3. [ ] Have you checked your code using ```cargo clippy``` command?
2. [ ] Have you formatted your code locally using `cargo +nightly fmt --all` command prior to submission?
3. [ ] Have you checked your code using `cargo clippy --all --all-features` command?

### Changes to Core Features:

Expand Down
6 changes: 3 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ updates:
target-branch: "dev"
directory: /
schedule:
interval: daily
interval: weekly
open-pull-requests-limit: 10
labels: [dependencies]
- package-ecosystem: "github-actions"
target-branch: "dev"
directory: "/"
schedule:
interval: "weekly"
interval: weekly
open-pull-requests-limit: 10
- package-ecosystem: docker
target-branch: "dev"
directory: "/"
schedule:
interval: "weekly"
interval: weekly
open-pull-requests-limit: 10
6 changes: 0 additions & 6 deletions .github/scripts/protoc.sh

This file was deleted.

22 changes: 22 additions & 0 deletions .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: Codespell

on:
push:
branches: [dev,master]
pull_request:
branches: [dev,master]

permissions:
contents: read

jobs:
codespell:
name: Check for spelling errors
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
- name: Codespell
uses: codespell-project/actions-codespell@v2
42 changes: 42 additions & 0 deletions .github/workflows/dev-docker-image-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Push dev branch container to ghcr

on:
workflow_dispatch:
push:
branches:
- dev

jobs:
dev-build-and-push:
runs-on: [self-hosted, linux, x64]
steps:
- uses: actions/checkout@v4
- name: Build the Docker image
run: |
buildx_containers=$(docker container ls -qf "name=buildx_buildkit")
buildx_volumes=$(docker volume ls -qf "name=buildx_buildkit")

if [ -n "$buildx_containers" ]; then
echo "Buildx containers to delete: " "$buildx_containers"
docker container rm -f "$buildx_containers"
fi

if [ -n "$buildx_volumes" ]; then
echo "Buildx volumes to delete: " "$buildx_volumes"
docker volume rm "$buildx_volumes"
fi

# Create build container
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --use

# Authenticate on registries
docker login https://ghcr.io -u qdrant --password ${{ secrets.GITHUB_TOKEN }}

# Build regular image for Github Registry
GITHUB_TAG="-t ghcr.io/qdrant/qdrant:dev-${{ github.sha }} -t ghcr.io/qdrant/qdrant:dev"

# Pull, retag and push to GitHub packages
docker buildx build --platform='linux/amd64,linux/arm64' --build-arg GIT_COMMIT_ID=${{ github.sha }} $GITHUB_TAG --push --label "org.opencontainers.image.revision"=${{ github.sha }} .


25 changes: 25 additions & 0 deletions .github/workflows/dev-docker-image-prune.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Delete old container images

on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *" # every day at midnight


jobs:
dev-clean-ghcr:
name: Delete old unused dev container images
runs-on: ubuntu-latest
steps:
- name: Delete dev branch containers older than a month
uses: snok/container-retention-policy@v2
with:
image-names: qdrant
cut-off: A month ago UTC
account-type: org
org-name: qdrant
keep-at-least: 10
filter-tags: dev-*
token-type: github-token
token: ${{ secrets.GITHUB_TOKEN }}
dry-run: true
44 changes: 27 additions & 17 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,42 +4,52 @@ on:
workflow_dispatch:
push:
# Pattern matched against refs/tags
tags:
tags:
- '*' # Push events to every tag not containing /

jobs:

build:

runs-on: ubuntu-latest

# Run build on our self-hosted runner, we had trouble with shared runners
runs-on: [self-hosted, linux, x64]
steps:
- uses: actions/checkout@v3
- uses: Swatinem/rust-cache@v1
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: Get current tag
id: vars
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
- name: Build the Docker image
env:
RELEASE_VERSION: ${{ steps.vars.outputs.tag }}
run: |
# Create build container
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --use


# Authenticate on registries
docker login --username generall --password ${{ secrets.DOCKERHUB_TOKEN }}

docker login https://docker.pkg.github.com -u qdrant --password ${{ secrets.GITHUB_TOKEN }}

# Build regular image for Docker Hub
DOCKERHUB_TAG="qdrant/qdrant:${{ github.ref_name }}"
TAGS="-t ${DOCKERHUB_TAG}"

DOCKERHUB_TAG_LATEST="qdrant/qdrant:latest"
TAGS="${TAGS} -t ${DOCKERHUB_TAG_LATEST}"

TAGS="-t ${DOCKERHUB_TAG} -t ${DOCKERHUB_TAG_LATEST}"
GITHUB_TAG="docker.pkg.github.com/qdrant/qdrant/qdrant:${{ github.ref_name }}"
docker buildx build --platform='linux/amd64,linux/arm64' $TAGS --push .


# Pull, retag and push to GitHub packages
docker buildx build --platform='linux/amd64,linux/arm64' --build-arg GIT_COMMIT_ID=${{ github.sha }} $TAGS --push --label "org.opencontainers.image.version"=$RELEASE_VERSION .
docker pull $DOCKERHUB_TAG

docker login https://docker.pkg.github.com -u qdrant --password ${{ secrets.GITHUB_TOKEN }}
docker tag $DOCKERHUB_TAG $GITHUB_TAG
docker push $GITHUB_TAG

# Build unprivileged image for Docker Hub
DOCKERHUB_TAG_UNPRIVILEGED="qdrant/qdrant:${{ github.ref_name }}-unprivileged"
DOCKERHUB_TAG_LATEST_UNPRIVILEGED="qdrant/qdrant:latest-unprivileged"
TAGS_UNPRIVILEGED="-t ${DOCKERHUB_TAG_UNPRIVILEGED} -t ${DOCKERHUB_TAG_LATEST_UNPRIVILEGED}"
GITHUB_TAG_UNPRIVILEGED="docker.pkg.github.com/qdrant/qdrant/qdrant:${{ github.ref_name }}-unprivileged"

# Pull, retag and push to GitHub packages
docker buildx build --build-arg='USER_ID=1000' --platform='linux/amd64,linux/arm64' $TAGS_UNPRIVILEGED --push --label "org.opencontainers.image.version"=$RELEASE_VERSION .
docker pull $DOCKERHUB_TAG_UNPRIVILEGED
docker tag $DOCKERHUB_TAG_UNPRIVILEGED $GITHUB_TAG_UNPRIVILEGED
docker push $GITHUB_TAG_UNPRIVILEGED