475 Commits

Author SHA1 Message Date
Kishore Nallan
e384b777a1 Collection operations on float fields. 2017-08-10 18:20:58 -04:00
Kishore Nallan
a2f475d7fc Enable ART to index and search on floating point numbers. 2017-08-09 18:17:26 -04:00
Kishore Nallan
6a6785ef74 Short circuit to speed up single token searches.
- Refactor token position population
- Store only the query index in topster instead of storing the full offsets.
- Calculate the offsets finally on the results that are to be returned.
2017-08-08 17:39:23 -04:00
Kishore Nallan
ce69dbb371 Remove all static variables in http server so that it can be reused. 2017-07-30 08:48:52 +05:30
Kishore Nallan
e066beb870 Move http data structs to a separate header. 2017-07-29 22:31:24 +05:30
Kishore Nallan
3e54cb4022 API for summary of a collection, including the number of documents indexed in the collection. 2017-07-29 11:46:55 +05:30
Kishore Nallan
916aaf6526 API for fetching a document ID and listing all collections. 2017-07-28 20:39:51 +05:30
Kishore Nallan
005b637f74 Send 401 rather than 403 when API key is incorrect. 2017-07-26 21:11:02 +05:30
Kishore Nallan
ffba0371b0 Proper API responses when pagination exceeds result boundaries. 2017-07-07 18:36:56 +05:30
Kishore Nallan
be0a222ccb Expose drop colllection API. 2017-07-06 08:45:31 +05:30
Kishore Nallan
c471cd50c3 Implement authentication against an API auth key.
The key should be passed via X-API-KEY HTTP header.
2017-07-04 22:18:47 +05:30
Kishore Nallan
8295707ed4 Allow pagination of results.
`page` and `per_page` can be specificed. Simpler to reason about than using the usual `start` and `offset` fields.
2017-06-15 17:14:10 +05:30
Kishore Nallan
57e03efe1f Contexual snippet only for longer strings.
Strings under a defined constant token length will be fully highlighted, instead of showing a snippet of relevant matching portion.
2017-06-14 08:53:23 +02:00
Kishore Nallan
3efaed15b8 Fixed a few bugs with calculation of best matched token offsets to be used for highlighting. 2017-06-13 12:03:24 -05:00
Kishore Nallan
50e08726da String field tokens which match with query tokens are highlighted in the results. 2017-06-09 14:59:06 -05:00
Kishore Nallan
1d5146f7ff Track best-matched token offsets needed for highlighting.
- We store the best matched token offset positions in Topster KV
- Using run-length encoding (via unions) to pack the offset diffs intelligently
2017-06-09 13:32:03 -05:00
Kishore Nallan
0b9d5e386a Pass program arguments for listen address and port into http server. 2017-05-29 20:41:46 +05:30
Kishore Nallan
b7bc974b8e Expose token ranking field properly via the API. 2017-05-27 14:02:32 +05:30
Kishore Nallan
7531f9b13c Add const in more places. 2017-05-22 18:59:14 +05:30
Kishore Nallan
61bfdf027b Fix valgrind errors, plugging other leaks. 2017-05-21 15:59:16 +05:30
Kishore Nallan
0bb8cf13bf Ensure that remove function really removes all auxillary indexing data structures. 2017-05-20 17:02:14 +05:30
Kishore Nallan
a5cd45e362 Rewrite facet implementation. 2017-05-20 13:25:56 +05:30
Kishore Nallan
3478aef573 API for deleting a document by ID. 2017-05-17 20:31:24 +05:30
Kishore Nallan
56c539d0df Expose search, sort and facet fields to the API. 2017-05-16 20:55:06 +05:30
Kishore Nallan
a25d2f590d Sort order is required only during query time. 2017-05-14 17:36:48 +05:30
Kishore Nallan
1992d92eaf Tests for asc/desc sort order. 2017-05-14 12:25:59 +05:30
Kishore Nallan
060959ad70 Fixed wrong found counts. 2017-05-13 22:31:56 +05:30
Kishore Nallan
f62247cd32 Make the sort_fields take order of sorting. 2017-05-07 21:33:04 +05:30
Kishore Nallan
1baaa2b344 API - creating a new collection. 2017-04-29 17:39:42 +05:30
Kishore Nallan
a82765277f Typesense API skeleton. 2017-04-28 21:08:45 +05:30
Kishore Nallan
01871cc279 Http server skeleton. 2017-04-15 11:41:53 +05:30
Kishore Nallan
8850f8b169 Patch RocksDB build to ensure that it links against only specific libraries. 2017-04-07 08:58:29 +05:30
Kishore Nallan
c698c3be1a Fix a few compile warnings/errors. 2017-03-30 18:25:37 +05:30
Kishore Nallan
70dda716c5 Parameterize the token ordering field. 2017-03-26 21:26:01 +05:30
Kishore Nallan
222e2c689a Handle indexing document that does not have all the fields defined in the schema. 2017-03-25 21:45:06 +05:30
Kishore Nallan
7af95e7f22 Refactored the facet implementation and as well as the query interface.
- Facetable and Rankable fields must be defined upfront during collection creation
- During query time, specific rank and facet fields can be mentioned but they should belong to the set declared previously
2017-03-19 19:25:42 +05:30
Kishore Nallan
4776b41dc1 Facet implementation. 2017-03-13 21:09:27 +05:30
Kishore Nallan
96921be016 Parse filter query string. 2017-03-06 21:17:13 +05:30
Kishore Nallan
0760e4d01b String based filtering. 2017-03-04 20:58:29 +05:30
Kishore Nallan
14168c48fc Support for "IN" style numerical filter. 2017-03-03 21:50:43 +05:30
Kishore Nallan
aa9945c3c0 Implemented filter on a single int32 value. 2017-02-12 12:51:28 +05:30
Kishore Nallan
c115c2c4a4 Use multi-key binary search to convert document IDs to corresponding indices.
Improved performance by 7x.
2017-02-07 22:42:58 +05:30
Kishore Nallan
536e605a35 Union for sorted array. 2017-02-05 17:38:04 +05:30
Kishore Nallan
3ef10b5bb0 Fix ordering of sequence id rocksdb keys. 2017-02-04 21:32:24 +05:30
Kishore Nallan
b880cfd531 Refactor forarray - split into individual classes. 2017-02-04 16:27:07 +05:30
Kishore Nallan
cab0b36699 Skeleton for filter support. 2017-02-02 09:20:06 +05:30
Kishore Nallan
431fd70fce Fix collection manager tests. 2017-02-02 08:39:01 +05:30
Kishore Nallan
4e468fb0b9 Index and search on multi-valued numeric field. 2017-01-28 20:32:42 -06:00
Kishore Nallan
385e8cb7a2 Index and search on multi-valued string field. 2017-01-28 10:37:46 -06:00
Kishore Nallan
22816ea0a0 Test for dropping a collection. 2017-01-27 06:36:22 -06:00