41 Commits

Author SHA1 Message Date
kishorenc
3f6f13baf1 Support for grouping overrides. 2020-06-16 16:28:14 +05:30
kishorenc
c5010a6a5f Results count should match group size for group query. 2020-06-14 17:16:01 +05:30
kishorenc
10c22c174a Consider grouping when generating facet counts. 2020-06-14 08:14:03 +05:30
kishorenc
b7dcb7367b Expose group by params. 2020-06-10 19:58:55 +05:30
kishorenc
8ffb9c5154 Reuse KV pointers instead of copying as objects. 2020-06-07 17:36:27 +05:30
kishorenc
1395d74d48 Manage scoped search API keys. 2020-04-30 14:21:39 +05:30
kishorenc
206fe5b833 Expose typo_tokens_threshold parameter.
If the number of results found for a specific query is less than this number, Typesense will attempt to look for tokens with more typos until enough results are found.
2020-03-07 12:31:05 +05:30
kishorenc
5e1c5f2093 Ditch use of number_t for sorting. 2020-03-05 08:03:01 +05:30
kishorenc
31e9e4719a Compute stats on all facet values regardless of facet query. 2020-03-01 21:18:45 +05:30
kishorenc
95c8fb7082 Allow non-string fields to be facetable. 2020-02-26 22:59:01 +05:30
kishorenc
1369a473e4 Facet query partial highlighting + tests. 2020-02-22 21:43:57 +05:30
kishorenc
38bac77c43 Bug fix: incomplete string array deletion. 2020-02-22 17:30:14 +05:30
kishorenc
654811f4a3 For facet query, let max_hits default to 0. 2020-02-21 12:48:03 +05:30
kishorenc
67c2169b88 Fixed an issue with facet query containing multiple tokens. 2020-02-18 20:30:15 +05:30
kishorenc
4fa89ebf00 Implement facet filtering. 2020-02-17 21:59:47 +05:30
kishorenc
dfbe3888d8 Refactor facet search to use hash based mapping.
Also fixed a bug where filter fields marked as facets were being searched only verbatim.
2020-02-16 17:41:17 +05:30
kishorenc
fd285b6fbe Allow maximum hits returned to be configurable.
This obviously has a performance impact, but it might not be a big deal for most people and is now left to their discretion. The default of 500 results stays to maintain backward compatibility.
2020-02-10 20:54:38 +05:30
kishorenc
a73774b005 Refactor the way string array offsets are stored.
Uses less memory and 15-20x faster now!
2019-11-13 21:51:33 +05:30
Kishore Nallan
2952b0d461 Allow upto 500 hits to be overridden. 2019-08-17 10:51:31 +05:30
Kishore Nallan
c1b9501351 Lay foundations for overriding search results. 2019-08-10 19:46:37 +05:30
Kishore Nallan
e6dad1682c Parameter for controlling max number of facets returned during search. 2019-06-26 18:58:18 +05:30
Kishore Nallan
ba205222b7 Refactor bulk indexing process. 2019-05-25 22:28:13 +05:30
Kishore Nallan
b5b7635dc7 Load the indices parallely from disk.
Decreases initialization and boot up time.
2019-02-09 16:34:39 +05:30
Kishore Nallan
0014e19ea6 Highlighting should include all search fields, and not just the best matched field. 2018-05-14 14:11:14 +05:30
Kishore Nallan
4f1736124b Use heap allocation rather than stack allocation for topster data. 2018-05-04 20:23:28 +05:30
Kishore Nallan
56ed39e3ff Refactor topster to ensure that it handles insertion of duplicate keys.
Instead of ignoring a duplicate blindly, ignore when match score is less than existing key.
2018-04-30 20:28:56 +05:30
Kishore Nallan
71f1fbb4aa Refactor query index logic. 2018-04-25 19:32:46 +05:30
Kishore Nallan
1d1cd2459b When multiple fields are searched, the same document should not be returned twice. 2018-04-24 17:49:04 +05:30
Kishore Nallan
b669a47c29 Highlight best matched string in an array.
An ARRAY_SEPARATOR delimiter is used to demarcate offsets of tokens from different indices of an array. Plain string fields are treated like a single-element array field, but without needing to use a delimiter.
2018-04-20 16:44:17 +05:30
Kishore Nallan
6ad5e36179 Allow configuring a threshold for dropping tokens.
Fixes https://github.com/typesense/typesense/issues/20
2018-04-12 19:25:59 +05:30
Kishore Nallan
55ac4feb08 Normalize unicode characters using ICU. 2018-04-02 11:26:32 +05:30
Kishore Nallan
22e3d36cc0 Fixed a bug where the distance between matched query tokens could exceed previously assumed limit. 2018-02-25 21:12:54 +05:30
Kishore Nallan
c3298ba6d8 Address -Wall and -Wextra warnings. 2018-01-25 20:08:13 +05:30
Kishore Nallan
01275c38f2 Use unorderd_map for low-volume meta datastructures.
Order of spp:sparse_hash_map during iteration is different in clang and gcc.
2017-12-20 09:16:15 +05:30
Kishore Nallan
fe0db59877 Support indexing of bool fields. 2017-12-13 20:24:44 +05:30
Kishore Nallan
3d38b63d7f Support upto 500 search results. 2017-11-24 17:53:38 +05:30
Kishore Nallan
d132098463 Free h2o related resources to have a clean shutdown. [Valgrind] 2017-11-19 20:41:31 +05:30
Kishore Nallan
eff61d2c25 Search for documents parallely. 2017-11-18 22:22:52 +05:30
Kishore Nallan
78b9ee52ec Make match score computation predictable and consistent across multiple indexes. 2017-11-12 22:31:29 +05:30
Kishore Nallan
f347375adb Compiles, but tests are failing. 2017-11-07 17:17:32 +05:30
Kishore Nallan
883a9f14a0 Rename collection.h and collection.cpp to index.h and index.cpp. 2017-11-06 12:46:00 +05:30