29 Commits

Author SHA1 Message Date
Arnaud Gourlay
14586fbfb6 Fix RecommendExample conversion to support new format (#7234) 2025-09-29 11:29:23 +02:00
Arnaud Gourlay
9b99408529 Always overwrite existing payload on upsert (#6533)
* Always overwrite existing payload on upsert

* Add REST tests
2025-05-22 23:17:18 +02:00
Andrey Vasnetsov
2baa8cda53 implement missing validation for sparse and milti-vectors in grpc (#6274) 2025-03-31 16:21:25 +02:00
Predrag Knezevic
6f23975e3e Enable running integration tests against non-localhost available instance (#5345)
* `QDRANT_HOST` variable is used by all openapi tests, removed its copies from
  `test_multi_vector_uint8.py`, `test_multi_vector_unnamed.py`, `test_query.py`,
  `test_shard_snapshot.py`, and `test_snapshot.py`
* Added optional `QDRANT_HOST_HEADERS` env variable to set custom HTTP headers
  in order to reach Qdrant instance behind a reverse proxy. The content of the
  variable is JSON payload, e.g. `{"host": "qdrant.local"}`
* Adapted `./tests/basic_*.sh` scripts to aware of `QDRANT_HOST_HEADERS` env variable
2024-11-08 11:21:36 +01:00
Luis Cossío
5f5fd25d64 Add grpc endpoint for Facet (#4933)
* add grpc endpoint

* gen grpc docs
2024-08-27 01:13:12 +02:00
Luis Cossío
45f6e67ed1 fix and futureproof mismatch of index parametrization and type (#4929) 2024-08-27 01:12:01 +02:00
Andrey Vasnetsov
419877a7a7 remove usage of vectors_count (#4052)
* remove usage of vectors_count

* skip serialization if none

* add deprecated mention

* Add colon after deprecation note

---------

Co-authored-by: timvisee <tim@visee.me>
2024-04-22 10:34:21 +02:00
xzfc
b415a00d38 Use /usr/bin/env bash in shebangs (#3570) 2024-03-05 17:04:31 +01:00
Andrey Vasnetsov
a6343ee96b Fix gRPC validation panic on list with multiple failing items (#2888)
* reproduce reported from with gprc panic in batch requests

* Fix validation extension on lists, just return first validation error

The public validator crate interface does not support creating
`ValidationErrors` struct with non-static strings, nor with multiple
errors for a single field. We can therefore not collect multiple errors
from multiple items and must return early on the first error.

* Update test, expect validation error response

---------

Co-authored-by: timvisee <tim@visee.me>
2023-12-06 16:50:36 +01:00
kwkr
f939ebc643 add grpc compliant health check (#2738)
* add grpc compliant health check

* add source link
2023-10-06 12:45:00 +02:00
Camden Cheek
6907271679 Add gRPC reflection server (#2483)
* add gRPC reflection server

* add basic integration tests

* only advertise public services

* appease linter
2023-09-04 16:42:42 +02:00
Arnaud Gourlay
fa4c96ed9f Add UUID to storage compatibility tests (#1447) 2023-03-05 12:59:28 +01:00
Andrey Vasnetsov
80af394d32 add write consistency param to rest and grpc api (#1397)
* add write consistency param to rest and grpc api

* fix grpcurl + refactor grpc for better extencibility

* upd grpc docs

* fix conversion
2023-02-06 15:18:58 +01:00
Arnaud Gourlay
e83bfef8b2 enable compression for gRPC (#1186)
* enable compression for gRPC

* add benchmarks

* fix grpc benchmark

* discardResponseBodies to reduce memory usage

* improve & split benchmarks

* do not use gzip for inter node communication as benchmarks are not conclusive
2022-11-25 12:15:26 +01:00
Andrey Vasnetsov
dc07b01e1f remove deprecated fields from API (#1030)
* remove depricated fields from API

* fmt

* upd openapi and integration tests

* fix grpc test

* regenerate storage reference data

* improve docs

Co-authored-by: Arnaud Gourlay <arnaud.gourlay@gmail.com>
2022-09-19 13:51:03 +02:00
Andrey Vasnetsov
83c21450c3 Pagination (#743)
* offset param for search and recomendation

* test and fix for pagination

* clippy + fmt

* upd schemas

* fix grpc requests in test
2022-06-27 13:22:02 +02:00
Andrey Vasnetsov
3d505f5ae5 gRPC int payload (#564)
* use custom message for json representation in gRPC

* fmt
2022-05-30 19:10:37 +02:00
Arnaud Gourlay
967e265900 [sharding] Extract grpc feature into sub-crate (#412)
* extract grpc feature into sub-crate

* move build.rs to api crate

* split proto files between services and objects

* update docs
2022-03-30 10:12:02 +02:00
Arnaud Gourlay
a0e52e84aa alias gRPC endpoint (#408) 2022-03-24 16:21:01 +01:00
Gabriel Velo
f69a7b740f json as payload (#306)
add json as payload
Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2022-03-21 07:09:10 -03:00
Andrey Vasnetsov
5cf9a8c21b [gRPC] recommendation method (#364)
* grpc: recommend points

* grpc:recommend docs
2022-03-03 20:39:07 +01:00
Andrey Vasnetsov
c6441f06c1 [gPRC] docs + refactoring (#363)
* wip: doc generator script

* fix enum default value + CollectionInfo upd + collections comments

* refactor grpc + generate docs

* disable clippy for auto-generated files

* Update src/tonic/proto/points.proto

Co-authored-by: Arnaud Gourlay <arnaud.gourlay@gmail.com>

Co-authored-by: Arnaud Gourlay <arnaud.gourlay@gmail.com>
2022-03-03 15:30:09 +01:00
Arnaud Gourlay
c59c35d44d gRPC retrieve methods (#343)
* gRPC retrieve methods

* code review: remove duplicate do_get_points

* code review: import for readability

* code review: reinstate fullpath by convention

* code review: experiment changing shape of with_vector flag

* code review: update openapi spec
2022-02-28 15:13:08 +01:00
Andrey Vasnetsov
58ce28a933 [gPRC] search method (#300)
* wip: grpc search + refactor payload selector

* grpc: search api + test

* fmt

* fix clippy

* update openapi schema (backward compatible)
2022-02-14 12:49:24 +01:00
Andrey Vasnetsov
c1b6cb163b UUID support in gRPC with oneof (#299)
* add PointId message proto

* fix clippy
2022-02-14 11:59:16 +01:00
Andrey Vasnetsov
02a50212e5 Refactor proto & rest (#302)
* reorder points.proto

* simplify grpc + replace match with enum (backward compatible)

* fmt

* remove try_match

* upd openapi schema

* fix grpc test

* fix grpc readme
2022-02-14 09:58:23 +01:00
Arnaud Gourlay
5a5da0a16d use existing integration tests as CI (#279) 2022-02-03 19:22:39 +01:00
Andrey Vasnetsov
3cd3959fc5 [gRPC] get collection method (#153)
* wip: implement get collection info grpc method

* fix async issue

* add api test

* fix review comments #153
2022-01-18 12:56:03 +01:00
Konstantin
56b1271752 [GRPC] Expose upsert points API (#107)
* [GRPC] Expose upsert points API

* refactor PointSruct: use map instead of list + grpc tests

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2021-12-11 21:55:01 +01:00