192 Commits

Author SHA1 Message Date
kishorenc
2061d04629 Treat token hits as a rank slot instead of a weight. 2020-12-28 19:20:00 +05:30
kishorenc
bc1d88f1eb Consider tokens matching across fields during ranking. 2020-12-28 19:20:00 +05:30
kishorenc
66a44a5afc Expose field weights used for scoring. 2020-12-28 19:20:00 +05:30
kishorenc
667eee1dad Use weighted scoring of fields for matching.
For now, weights are not exposed, but this is possible in future.
2020-12-28 19:20:00 +05:30
kishorenc
435476df5d Rank prefix match below exact match. 2020-12-28 19:19:59 +05:30
kishorenc
590aed7f0e Give highest priority to field order while ranking. 2020-12-28 19:19:59 +05:30
kishorenc
f4423367c8 Aggregate match score when matched across array elements. 2020-12-28 19:19:59 +05:30
kishorenc
e5fa36a0b0 Remove pre-sorting of index topsters. 2020-12-28 19:19:59 +05:30
kishorenc
8f818f7fcb More exhaustive multi-field ranking. 2020-12-28 19:19:59 +05:30
kishorenc
1373dacb0c Improve upsert test case with a filter usecase. 2020-12-28 19:19:59 +05:30
kishorenc
fc989f1ac2 Handle case when all query tokens are exclusions. 2020-12-28 19:19:59 +05:30
kishorenc
6883b4db36 Speed up numerical filter + fixed edge case with -ve value. 2020-12-28 19:19:59 +05:30
kishorenc
c97ded0458 Support expiry of API keys.
Both parent and scoped keys are supported, but the expiry time of parent key takes precedence. Default is a date far into the future.
2020-12-28 19:19:59 +05:30
kishorenc
a912a250ff Fix bad unicode characters in highlight snippet. 2020-12-28 19:19:59 +05:30
kishorenc
f164de4702 Multi field matching: ensure best matched field prevails. 2020-12-28 19:19:59 +05:30
kishorenc
1bed2d7d80 Support excluding tokens from query.
Prefixing a token in the query with "-" will fetch documents that do not contain that token.
2020-12-28 19:19:59 +05:30
kishorenc
7e2b0fcdcb Match query tokens across multiple fields effectively. 2020-12-28 19:19:59 +05:30
kishorenc
7d6a266934 Validate field data types during collection creation. 2020-11-17 20:10:34 +05:30
kishorenc
eaea93c572 Delete documents matching a filter query. 2020-11-17 20:10:34 +05:30
kishorenc
9533b73609 Fixed a few higlighting/splitting edge cases. 2020-11-17 20:10:34 +05:30
kishorenc
6c1455bc2f Return matched tokens in highlight response structure.
Also, allows customization of the highlighting tag used (default being the mark tag).
2020-11-17 20:10:34 +05:30
kishorenc
b2cce4f336 Allow colon to be present in filter query value. 2020-11-07 13:52:52 +05:30
Kishore Nallan
908a8b0026 [Bug] String array field update + faceting.
Updates to string array fields were triggering a crash during faceting due to mismatch in array position.
2020-11-03 19:36:25 +05:30
Kishore Nallan
bfddcb9e13 Fix typo. 2020-10-25 10:13:15 +05:30
Kishore Nallan
f836a633b6 Ensure that ID in the path and body match. 2020-10-25 08:55:44 +05:30
Kishore Nallan
bdbb097ad2 Fix upsert not fetching document correctly. 2020-10-25 07:42:44 +05:30
Kishore Nallan
347a2a1ece Add more tests for update/upsert/create scenarios. 2020-10-24 17:17:39 +05:30
Kishore Nallan
2041de033f Refactor underlying APIs to support insert/update/upsert. 2020-10-24 09:23:33 +05:30
Kishore Nallan
bccc3ac362 Array append/remove perf improvements. 2020-10-20 11:56:43 +05:30
Kishore Nallan
73f3e0620e Combine usage of add() / add_many(). 2020-10-17 15:17:15 +05:30
Kishore Nallan
9adbdd1576 Fixed a bug with hlighlighting in upsert import. 2020-10-17 11:55:42 +05:30
Kishore Nallan
60d4e9bf5a Support upsert during import. 2020-10-10 18:09:17 +05:30
Kishore Nallan
7ced978520 Parameterize the num of tokens that surround a highlight. 2020-10-06 17:06:40 +05:30
kishorenc
3ed27ab814 Expose document update API endpoint. 2020-09-27 20:00:40 +05:30
kishorenc
377769294f Add foundational support for document update. 2020-09-27 17:20:22 +05:30
kishorenc
249c4886dc Fix bad document not being returned sometimes during import. 2020-09-24 19:02:08 +05:30
kishorenc
97394c146a Allow := filter syntax for non-string fields.
Though it makes no difference.
2020-09-14 11:59:43 +05:30
kishorenc
d06552eeba Allow a string facet field to be filtered verbatim.
Use the `field := value` notation to indicate verbatim match. Requires the field to be a facet field, otherwise an error is returned indicating that requirement.
2020-09-10 11:56:23 +05:30
kishorenc
13fd927944 Fix crash when an int32 field is filtered with an int64 value. 2020-09-07 19:23:11 +05:30
kishorenc
aa9e4a226e Filtering on string field should be verbatim by default.
Allow earlier "CONTAINS" behavior via "~" operator.
2020-09-06 16:25:39 +05:30
kishorenc
d42a04acb9 Return raw doc in response when indexing fails during import. 2020-09-05 19:40:48 +05:30
kishorenc
e254a1d519 Fix an edge case in match score calculation. 2020-08-28 20:09:34 +05:30
kishorenc
09541e5311 Parameterize number of indices per collection. 2020-08-19 12:29:59 +05:30
kishorenc
e2c0b52671 Free request & response objects via generator dispose callback. 2020-08-17 11:53:04 +05:30
kishorenc
f54bc8a4b3 Fix + add test for int64 as default sorting field. 2020-08-13 07:42:15 +05:30
kishorenc
0c186481a9 Allow int64 to be used as a default sorting field. 2020-08-12 16:06:27 +05:30
kishorenc
14faa3af4e Speed up wildcard searches further. 2020-08-12 15:33:40 +05:30
kishorenc
22ce33bfbe Allow a threshold for memory limit to be specified. 2020-08-09 12:04:37 +05:30
kishorenc
237f47974a Use batching for imports. 2020-07-25 20:36:05 +05:30
kishorenc
933cbe9bb0 More tests. 2020-06-22 08:29:35 +05:30