245 Commits

Author SHA1 Message Date
Harpreet Sangar
72b8d4c26e Filter by reference. 2023-03-10 18:18:46 +05:30
Kishore Nallan
149a9b51df Merge branch 'v0.25' into v0.25-join 2023-03-10 18:16:56 +05:30
krunal1313
77ffcd9444 sorting grouped results on group hit count 2023-03-02 18:05:28 +05:30
ozanarmagan
4f921a3040 Auto vector generation & Hybrid Search 2023-02-16 14:47:17 +03:00
Harpreet Sangar
a1e744b74d temp. 2023-02-16 14:47:17 +03:00
Harpreet Sangar
7a73d9ffd0 Reference include_fields. 2023-02-16 14:47:17 +03:00
Harpreet Sangar
84fbcf37fd Add reference_fields map in Collection. 2023-02-16 14:47:17 +03:00
Harpreet Sangar
7f11eb4bfa Optimize reference filtering. 2023-02-16 14:47:17 +03:00
Harpreet Sangar
e628a24d6e Filter by reference. 2023-02-16 14:47:17 +03:00
Harpreet Sangar
d7ff4bdc0e
Support wildcard. (#852)
* Support wildcard.

* Add test case for `query_by=user.*`

* Remove duplicate.

* Add WildcardHighlightFields test.

* Add WildcardHighlightFullFields test.

* Review changes.
2023-01-11 20:30:07 +05:30
Kishore Nallan
8b69d524ba Fix include/exclude fields in export for nested docs. 2023-01-10 16:17:41 +05:30
Kishore Nallan
cd5cfc5445 Merge branch 'v0.24-nested' into v0.25
# Conflicts:
#	include/collection.h
#	src/collection.cpp
#	src/collection_manager.cpp
#	src/index.cpp
2023-01-09 16:06:34 +05:30
Kishore Nallan
0fc0f80d21 Parse text match info based on match type. 2023-01-09 13:16:30 +05:30
Harpreet Sangar
5f034f8b3b
Update documents using filter_by. (#845)
* Update documents.

* Return number of documents updated in the response.

* Update test.

* Use `add_many` to update documents.

* Test batching of updation.

* Support updation of all documents by `filter_by=*`.

* Update test to work on schema with nesting enabled.

* Fix memory leak.

* Add nested field updation test.

* Remove iterator key comparison.
2023-01-06 12:36:56 +05:30
Kishore Nallan
bc31be874a Add text match modes: max_score and max_weight. 2023-01-04 20:30:30 +05:30
Kishore Nallan
b8b9fb20b3 Merge branch 'v0.24-nested' into v0.25
# Conflicts:
#	include/collection.h
#	src/collection.cpp
#	src/collection_manager.cpp
#	test/collection_faceting_test.cpp
2023-01-03 09:42:21 +05:30
Kishore Nallan
1a66a25e2f Enable slow searches logging by default (30s cutoff) 2023-01-02 18:53:36 +05:30
Kishore Nallan
0e1d70ebf6 Add flag to disable old highlight structure. 2022-12-25 21:04:22 +05:30
Kishore Nallan
df8f6849fe Facet estimation for large result sets. 2022-12-15 16:27:01 +05:30
Krunal Gandhi
2e8ad0f7c3
Range faceting (#823)
* facet range base commit

* ammending range checks to strictly abide to range, ignoring outliers

* range facet query parsing and results

* Making facet processing generic for both
range and non-range facets

* Adding facet parsing tests and bug fixes

* Adding range facet search tests and some refactoring

* Refactoring and adding more tests for seach. adding Range should be continuous check

* Refactoring the code

* making test case asserts more verbose

Co-authored-by: Kishore Nallan <kishorenc@gmail.com>
2022-12-14 15:49:14 +05:30
Kishore Nallan
856ad0efe5 Fix new snippetting on flat fields. 2022-11-25 18:50:05 +05:30
Kishore Nallan
cbf5985307 Fix duplication of nested fields during flattening. 2022-11-23 15:08:04 +05:30
Kishore Nallan
4e7c5560aa Handle missing optional object fields. 2022-11-19 08:49:11 +05:30
Kishore Nallan
23bd0af779 Simplify nested highlighting format. 2022-11-11 19:01:41 +05:30
Kishore Nallan
5292956718 Fix highlight meta structure. 2022-11-09 12:41:40 +05:30
Kishore Nallan
c87e0ddf9d Highlight meta should follow nested doc structure. 2022-10-31 16:19:51 +05:30
Kishore Nallan
643ba73ec7 Fix edge case with field names containing dots.
Should not be treated as nested fields.
2022-10-15 17:34:05 +05:30
Harpreet Sangar
f75cbca920
Filter query (#737)
* Implement advance filter query parser.

* Remove `exclude_filters`.

* Review changes

* Implement do_filtering2

* Use updated implementation

* Pass failing tests.

* Handle special characters in value.

* Add space around  in embedded filters

* Update tokenize

* Rename to `recursive_filtering`

* Deconstruct filter tree.

* Remove separating space requirement for operators

* Fix rebase errors.

* Undo filter override change

* Format changes

* Pass StaticFilteringMultipleRuleMatch

* Undo formatting changes

* Pass DynamicFilteringMultipleRuleMatch

* Review changes.

* Add filter_query guard.
2022-10-11 11:21:20 +05:30
Kishore Nallan
d2daad2c3d Basic alter support for nested fields.
No longer storing .flat inside the document.
2022-09-13 14:47:17 +05:30
Kishore Nallan
dff7f8b746 Don't persist flattened nested field values on disk.
Instead, we will reconstruct them when we fetch them from disk, trading cpu for storage.
2022-09-12 15:04:12 +05:30
Kishore Nallan
0e39736327 Refactor / simplify schema update logic. 2022-09-09 14:14:21 +05:30
Kishore Nallan
44edeb8a5e Buffer IDs during filtering. 2022-09-03 18:35:14 +05:30
Kishore Nallan
b20c32046b Support simple filter_by rule in overrides. 2022-09-02 13:27:17 +05:30
Kishore Nallan
70e6a89ea8 Do word level tokenization for th locale.
This ensures that we handle change in text length due to NFKC normalization.
2022-08-31 07:41:33 +05:30
Kishore Nallan
a98e5bacdd Vector search basics. 2022-08-27 13:47:09 +05:30
Kishore Nallan
b7e33584fb Ensure that only highlighted fields exist in snippet. 2022-08-25 12:47:45 +05:30
Kishore Nallan
d748c90b4b Merge branch 'v0.24-changes' into v0.24-nested
# Conflicts:
#	include/collection.h
#	src/collection.cpp
#	test/collection_specific_more_test.cpp
2022-08-13 19:03:03 +05:30
Kishore Nallan
6bb2e6e6f8 Fix ordered weighted field index properties. 2022-08-10 20:45:27 +05:30
Kishore Nallan
134af13281 By default, don't enable nested fields. 2022-08-07 17:36:28 +05:30
Kishore Nallan
869d515688 Handle optional restriction for nested fields. 2022-08-05 19:24:06 +05:30
Kishore Nallan
a90bfba930 Multiple explicit nested fields should be allowed. 2022-08-03 18:38:18 +05:30
Kishore Nallan
903c9f6330 Merge branch 'v0.24-changes' into v0.24-nested 2022-08-02 18:42:53 +05:30
Kishore Nallan
4c6eac9840 Allow cloning of collection & assets from a reference collection. 2022-08-02 18:02:23 +05:30
Kishore Nallan
f86f8b5487 Support nested fields with explicit schema. 2022-08-01 19:44:25 +05:30
Kishore Nallan
11d157463c Fix unicode character boundary highlighting. 2022-07-28 17:59:16 +05:30
Kishore Nallan
5a220e7398 Split highlight into meta/snippet/full. 2022-07-27 17:47:21 +05:30
Kishore Nallan
bef79000e1 Skeleton for nested field indexing and highlighting. 2022-07-25 17:25:49 +05:30
Kishore Nallan
308b34eb9c Provide breakdown of text match score in response. 2022-07-22 17:12:51 +05:30
Kishore Nallan
aa3eddf9f4 Add total matching fields to match score. 2022-07-21 16:02:22 +05:30
Kishore Nallan
2e3bbca1b8 Fix symbols not being supported in synonyms. 2022-07-14 16:14:35 +05:30