2284 Commits

Author SHA1 Message Date
Harpreet Sangar
fc032efed3 Add test for prefix search with filter. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
e5fbf0cff2 Refactor art_fuzzy_search_i. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
b72e31bc5c Fix filter_result_iterator_t::valid(uint32_t id) not updating seq_id in case of complex filter. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
e9ce1c0955 Refactor or_iterator_t::take_id. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
9baa51664d Add convenience methods in result_iter_state_t. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
387c3ede6f Refactor string filter iteration. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
5dbfb9df63 Remove Index::do_filtering. Using filter_result_t instead. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
2f615fe1ff Fix memory leaks:
* Handle deletion of `filter_tree_root` in `sort_fields_guard_t`.
* Handle `filter_tree_root` being updated in `Index::static_filter_query_eval`.
* Handle deletion of `phrase_result_ids` in `Index::search`.
2023-05-16 18:52:14 +05:30
Harpreet Sangar
5c79f200c3 Fix failing tests. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
167edaba6f Add tests for ArrayUtils::skip_index_to_id. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
33be7e6c68 Add ArrayUtils::skip_index_to_id. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
b67655c45b Optimize exclusion in filter_result_iterator_t::get_n_ids. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
c7107a4f10 Handle excluded ids in filter_result_iterator_t::get_n_ids. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
8ba560e896 Fix failing tests. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
688d8b6bcf Support geo filtering. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
d85cf706b2 Add tests. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
6459681a0d Add filter_result_iterator_t::get_n_ids.
Use `is_valid` instead of `valid()`.
Handle special `_all_` field name in filtering logic.
2023-05-16 18:52:14 +05:30
Harpreet Sangar
d44e2e4c7a Expose filter ids from iterator where possible. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
ac4cb54436 Refactor numeric filter initialization. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
7ef71b0fa8 Optimize filter_result_iterator_t::to_filter_id_array. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
c571812696 Add numeric field support in filter_result_t. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
f53f6635b7 Fix approximation logic of filter matches in case of !=. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
a9ca96a63e Handle != in filter_result_iterator_t. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
d796391464 Add approx_filter_ids_length field. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
889c1759e2 Refactor Index::search_wildcard. 2023-05-16 18:52:14 +05:30
Harpreet Sangar
37fcb53f6f Fix memory leak. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
97316b8b42 Fix FacetFieldStringFiltering test. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
191013dc5d Refactor filtering logic to overcome circular referencing.
Handle exact string filtering in `filter_result_iterator`.
2023-05-16 18:52:13 +05:30
Harpreet Sangar
3a3814aba5 Add to_filter_id_array and and_scalar methods. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
9be1d8e841 Add move assignment operator in filter_result_iterator_t. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
a55fe2259b Refactor filter_result_iterator_t. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
7471e45678 Handle null filter tree. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
b1aaffe7d0 Add filter_result_iterator_t::reset. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
4a1de71e81 Add tests for filter_result_iterator_t::contains_atleast_one. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
a7719d7b30 Add filter_result_iterator_t::contains_atleast_one. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
4d0c7b5112 Refactor valid(id). 2023-05-16 18:52:13 +05:30
Harpreet Sangar
eb7a5b55e6 Add filter_result_iterator_t::init_status(). 2023-05-16 18:52:13 +05:30
Harpreet Sangar
3b0a2cbd55 Refactor filter_result_iterator_t::next(). 2023-05-16 18:52:13 +05:30
Harpreet Sangar
ed719d19f3 Handle apply_not_equals. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
dee367c7d2 Add filter_result_iterator_t::valid(uint32_t id) test case. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
41063e2e2a Add test case for complex filter. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
0a022382ce Add test cases for AND and OR. 2023-05-16 18:52:13 +05:30
Harpreet Sangar
b024e0d4ec Add filter_result_iterator_t::valid(uint32_t id). 2023-05-16 18:52:13 +05:30
Harpreet Sangar
25318fd3ac Add filter_result_iterator_t. 2023-05-16 18:52:13 +05:30
Kishore Nallan
4395e3d81e Fix test. 2023-05-15 18:15:15 +05:30
Kishore Nallan
3e1af0ed24 Some skeleton doc operations like incrementing. 2023-05-15 17:59:45 +05:30
Kishore Nallan
7c158e6828 Parameterize cache size. 2023-05-15 14:50:50 +05:30
Kishore Nallan
72c5595780 Move asan opts earlier. 2023-05-14 20:31:50 +05:30
Kishore Nallan
397727fdbc Handle concurrency of ja tokenizer. 2023-05-14 20:27:05 +05:30
Kishore Nallan
10ba8f72bf Fix conflicting declaration of C function in brpc. 2023-05-14 20:16:42 +05:30