Commit Graph

70 Commits

Author SHA1 Message Date
Egor Ivkov
ee4cd768ea Allows specifying collection meta operation commit timeout in API (#444)
* Allows specifying collection meta operation commit timeout in API

Also restructures a part of gRPC collection API

* Review: link to dev docs

* Review: Timeout error description

Also committed generated protobuf code that somehow was left out

* Review: seconds in API and minor proto fixes
2022-04-08 14:42:38 +03:00
Andrey Vasnetsov
ce21abf033 Values count condition (#439)
* add values_count condition

* fmt

* fix tests and clippy

* fmt
2022-04-05 14:31:53 +02:00
Andrey Vasnetsov
b07428f620 Is empty condition (#423)
* is-empty condition

* fmt

* better assert

* fmt
2022-04-03 16:55:51 +02:00
Andrey Vasnetsov
adc1f4ad97 Bool filter (#421)
* bool match condition

* use generic values for match requests

* fmt

* upd grpc interface

* upd grpc docs
2022-04-03 16:08:34 +02:00
Arnaud Gourlay
77a3b64593 add document generation step to the grpc guide (#422) 2022-03-30 16:57:50 +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
Andrey Vasnetsov
6fc8d0affe upd openAPI schema names (#416) 2022-03-29 14:12:52 +02: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
Egor Ivkov
960937b58b Sharding related collection API changes (#381)
* NonZeroU32 shard number

* Inconsistent Failure option

* Generate docs and apis
2022-03-11 19:26:09 +03:00
Egor Ivkov
2bb52abc71 Multiple shards in collection (#360)
* Multiple shards in collection

* Collection and Shard async drop

* Generate APIs for shard_number param
2022-03-07 16:22:47 +03:00
Andrey Vasnetsov
072381a16b upd legacy methods 2022-03-07 10:57:18 +01:00
Andrey Vasnetsov
9999ee23e9 Update README.md 2022-03-04 15:12:57 +01:00
Andrey Vasnetsov
e3dd479d10 v0.6.0 2022-03-03 23:58:13 +01:00
Andrey Vasnetsov
5cf9a8c21b [gRPC] recommendation method (#364)
* grpc: recommend points

* grpc:recommend docs
2022-03-03 20:39:07 +01:00
Arnaud Gourlay
c928217a8c enable gRPC via a runtime config (#352)
* enable gRPC via a runtime config

* code review

* code review: rename rest_port to http_port

* Update config/config.yaml

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>

* disable grpc by default

* enable gPRC in integration test

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2022-03-03 19:23:31 +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
Andrey Vasnetsov
20c1e0f20d upd naming in api (#361) 2022-03-03 13:27:51 +01:00
Andrey Vasnetsov
c3cfc93574 fix PayloadSelector enum for better openapi compatibility (#358) 2022-03-02 15:01:27 +01:00
Andrey Vasnetsov
bdc3194b13 allow to return vectors and payload with recommendation request #353 (#357)
* allow to return vectors and payload with recommendation request #353

* fmt

* unify `with_vector` comment line

* upd openapi
2022-03-02 10:42:58 +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
eb2bbbf7fe v0.5.1 2022-02-16 11:35:37 +01:00
Andrey Vasnetsov
e45379e438 Better optimizer error reporting + small bug fixes (#316)
* optimizer error reporting, decouple data removing, optimizator fix

* fmt

* fmt + clippy

* update openapi
2022-02-16 09:59:11 +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
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
Andrey Vasnetsov
f5feff8080 Validated integration tests - #232
* wip: re-implement http tests using openapi validation library

* collection delete api

* payload operations test

* payload delete operations test

* payload index creation and removing test

* uuid operations test

* schema consistency test

* add tests into pipeline

* chmod +x

* faster local runs with docker cache

* upd instruction
2022-02-11 16:43:47 +01:00
Arnaud Gourlay
80652c5624 clean openapi setup (#288) 2022-02-07 07:59:09 +01:00
Andrey Vasnetsov
cc9862d388 v0.5.0 release 2022-02-03 11:35:26 +01:00
Arnaud Gourlay
bf10366449 add dev. doc for gRPC (#277) 2022-02-03 10:19:17 +01:00
Andrey Vasnetsov
4a5cf094a4 fix in create index api: post -> put (#272) 2022-02-01 16:09:38 +01:00
Andrey Vasnetsov
efc0e4643d add missiong wait for collection index operation (#270) 2022-01-31 17:30:15 +01:00
Andrey Vasnetsov
65787f7f55 UUID as point id (#265)
* wip: u64 -> u128 + serialization tests

* breaking: use more flexible structure for saving point ids

* replace u64 external id type with enum

* update openapi definitions for uuid + fix retrieve point api + bash script tests
2022-01-31 13:18:07 +01:00
Andrey Vasnetsov
a2f35044c9 enable with_vector flag in api #50 (#267)
* enable `with_vector` flag in api #50

* fix readme
2022-01-31 11:31:16 +01:00
Tim Eggert
559e7a8055 Delete Points By Filter API #39 (#250)
* Delete Points By Filter API #39

* make delete_by_filter part of existing delete query + fix merge issues #39

* apply fmt

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2022-01-25 16:22:18 +01:00
Andrey Vasnetsov
9440143af0 rename point update api structure #208 (#251) 2022-01-24 19:32:14 +01:00
Andrey Vasnetsov
d51a70fa93 add openapi validation during generation #208 (#248)
* add openapi validation during generation #208

* fix: POST -> PUT in point update api implementation and docs #208

* fix: openapi structure exposure

* fix: api usage in stress test
2022-01-24 17:33:57 +01:00
Andrey Vasnetsov
02f53f2ef0 fix: openapi specs validation #208 (#246)
* fix: openapi specs validation #208

* fix: upd api descriptions
2022-01-24 11:46:14 +01:00
Arnaud Gourlay
97cb5091bc Split Points API #208 (#221)
Split Points API #208
2022-01-24 07:54:47 +01:00
Arnaud Gourlay
a9fce52a5f document API change process (#245) 2022-01-24 07:32:53 +01:00
Andrey Vasnetsov
898b692f39 [WIP] Limit segment size #135 (#195)
* add parameters to optimizer config

* benchmark search speed in different segment sizes

* use constructor for FilteredScorer

* * Implement benchmarks for HNSW index search with different number of
  stored points
* Fix minor issue in HNSW graph edge assignment
* Update profiler with call-graph report generation
* Add profiling guide
* Add HNSW graph statistics test function (debug inly)

* limit resulting segment size in merge optimizer

* fix clippy

* stop the music

* fix clippy once again

* fmt once again
2022-01-18 15:49:35 +01:00
Andrey Vasnetsov
c53a8774b2 Roadmap draft (#158)
* roadmap draft

* fix suggestions

* fix typo
2022-01-11 15:49:28 +01:00
Andrey Vasnetsov
f1e28ad4ad display latest released API documentation #190 2022-01-09 13:41:25 +01:00
Daniil
1ad529c315 Allow to include vector into search result (#176)
* feat(#50): include vector into search result

allow to specify 'with_vector' parameter in search api to get search results vector data

* test(#50): fix tests

* chore(#50): apply cargo fmt

* chore(#50): update api docs

run tools/generate_openapi_models.sh

Co-authored-by: Daniil Sunyaev <dasforrum@gmail.com>
2022-01-03 17:12:01 +01:00
Andrey Vasnetsov
b53c752c21 fix logo path 2022-01-03 11:42:50 +01:00
Andrey Vasnetsov
f4a0511385 Add OpenAPI version selector (#171)
* add OpenAPI version selector

* fix typo
2022-01-03 11:34:09 +01:00
Andrey Vasnetsov
d7148126ce Split collection update API into several endpoints (#126)
* split storage operation structures #32

* cargo fmt #32

* split collection update api into several endpoints #32

* cargo fmt #32

* fix tonic-related code with new structures

* upd alias structures

* use ytt teplate engine for OpenAPI Endpoint schema generation
2021-12-13 09:38:33 +01:00
Andrey Vasnetsov
b73b641403 Update api descriptions 37 (#125)
* upd API description in OpenAPI #37

* upd openapi
2021-11-28 12:45:55 +01:00
Andrey Vasnetsov
e7e13162c2 add openblas patch to the root package 2021-10-27 23:02:41 +02:00
Andrey Vasnetsov
be1474d3ed upd version to 0.4.1 2021-10-25 23:03:59 +02:00
Andrey Vasnetsov
29830f953d default payload return is null + update openAPI 2021-10-24 18:47:58 +02:00
Andrey Vasnetsov
3a7485aa8d update OpenAPI schema 2021-10-24 18:21:17 +02:00