Commit Graph

93 Commits

Author SHA1 Message Date
Eric Peterson 9467500482 Merge pull request #14794 from philberryman/feat/analytics-number-of-search-results
add number of searches
2022-11-30 12:09:14 +01:00
Fredrik Adelöw de8a975911 remove usages of node-abort-controller
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2022-11-28 17:04:49 +01:00
Eric Peterson aff7351fa5 Use non-deprecated TestPipeline static methods
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-11-25 15:22:32 +01:00
Eric Peterson 54c5836f7a Deprecate withSubject() in favor of type-specific methods
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-11-25 15:22:30 +01:00
Phil Berryman 29ebc43a0b feat: add number of searches
Signed-off-by: Phil Berryman <phil@berryman.org.uk>
2022-11-25 00:13:05 -08:00
Camila Belo 9b1109858c fix(search-backend-node): max listeners exceeded warning
Signed-off-by: Camila Belo <camilaibs@gmail.com>
2022-11-22 11:42:33 +01:00
Eric Peterson 81b1e7b0fe Simplify base classes by using stream _construct methods
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-11-18 14:47:19 +01:00
Brian Fletcher 1bbe66c27b move wait into try block
Signed-off-by: Brian Fletcher <brian@roadie.io>
2022-11-17 11:09:34 +00:00
Brian Fletcher a962ce0551 wait for initialize to complete before finalize
Signed-off-by: Brian Fletcher <brian@roadie.io>
2022-11-16 14:06:12 +00:00
Eric Peterson 8006f8a602 Tag indexing logs with document type
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-10-10 18:02:33 +02:00
Camila Belo 60a912cd2c Rename param to page limit and validate its type
Signed-off-by: Camila Belo <camilaibs@gmail.com>
2022-10-04 10:54:09 +02:00
Emma Indal 814c8a61f6 Search engines to use resultPerPage param if provided
Co-authored-by: Camila Loiola <camilaibs@gmail.com>
Signed-off-by: Emma Indal <emma.indahl@gmail.com>
2022-10-04 10:54:09 +02:00
Fredrik Adelöw aaab1e34da Fix linting errors after #13392
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2022-08-30 13:44:09 +02:00
Emma Indal 0c42005843 Merge pull request #13297 from swenhan/master
Fix in-doc search no result when title has stopwords
2022-08-29 11:05:31 +02:00
Seow Wen Han 5e14cea98b Fix in-doc search not working when stopword is in title (#1)
* Trying to reproduce stop-word error but couldn't

* Update and add appropriate test case for stop-word testing

* Implement fix for stopword in title, add unit test case

Signed-off-by: Seow Wen Han <wseow@seekasia.com>
2022-08-23 14:10:50 +08:00
Fredrik Adelöw 3f739be9d9 more api cleanup
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2022-08-18 15:16:19 +02:00
Emma Indal f22df2248d delete deprecations
Signed-off-by: Emma Indal <emma.indahl@gmail.com>
2022-07-18 10:09:01 +02:00
Camila Belo dcba440459 refactor: apply review suggestions
Signed-off-by: Camila Belo <camilaibs@gmail.com>
2022-07-05 12:02:21 +02:00
Camila Belo 06f9999f4b feat(search-backend-node): check types in error handling
Co-authored-by: Emma Indal <emma.indahl@gmail.com>
Signed-off-by: Camila Belo <camilaibs@gmail.com>
2022-06-28 13:47:58 +02:00
Camila Belo 8e63e71b2c feat(search-backend-node): improve error handling
Co-authored-by: Emma Indal <emma.indahl@gmail.com>
Signed-off-by: Camila Belo <camilaibs@gmail.com>
2022-06-28 11:59:49 +02:00
Emma Indal 34c97eb35b switch to use .json instead of .send
Signed-off-by: Emma Indal <emma.indahl@gmail.com>
2022-06-22 14:06:09 +02:00
Emma Indal 18dad948a1 add custom search error
Signed-off-by: Emma Indal <emma.indahl@gmail.com>
2022-06-20 15:46:35 +02:00
Eric Peterson c7ce7b1eb0 Test rank handling in all search engines.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-06-10 15:36:11 +02:00
Eric Peterson 915700f64f Set a pagination-aware rank value for all search engines.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-06-10 15:36:11 +02:00
Emma Indal 2e6b24d537 clean up api report for search-backend-node package
Signed-off-by: Emma Indal <emma.indahl@gmail.com>
2022-06-02 12:02:00 +02:00
Eric Peterson 3bb25a9acc Initial implementation of a generic ndjson collator.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-05-30 19:30:56 +02:00
Camila Belo 3345dbf84b Merge pull request #11523 from cowboyd/propagate-index-failure
Don't swallow indexing failures
2022-05-18 16:00:38 +02:00
Charles Lowell bde1631c83 Don't swallow indexing failures
When an error occurs in the indexer pipeline, it logs it out, and then
drops it on the floor. This is problematic because externally, from
the task scheduler's perspective, it appears to have succeeded, which
is not true.

As a result, these failures are invisible to tooling which introspects
over tasks.

This makes the index task promise resolve when the pipeline finishes as
before, but it rejects if the pipeline failed.

Signed-off-by: Charles Lowell <cowboyd@frontside.com>
2022-05-16 15:48:37 +03:00
Fredrik Adelöw 16dcf2a807 Merge pull request #10981 from kuangp/feat/search/highlight
feat(search): highlight search result terms
2022-05-09 18:27:07 +02:00
Phil Kuang 3a74e203a8 feat(search): highlight search result terms
Signed-off-by: Phil Kuang <pkuang@factset.com>
2022-05-09 11:13:34 -04:00
Eric Peterson 71d3432710 Set the default batchSize to 1000 for all search engines.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-05-01 16:19:58 +02:00
Phil Kuang 0a63e99a26 feat(search): handle search indexing coordination among nodes
Signed-off-by: Phil Kuang <pkuang@factset.com>
2022-04-06 14:03:04 -04:00
Eric Peterson 1cd678be2b Fix tsc errors in search-backend-node
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-04-04 16:01:13 +02:00
Patrik Oldsberg 850e0ebbe3 search-backend-node: update runPeriodically test to work with jest 27
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2022-03-25 11:28:14 +01:00
Mike Lewis d07ed471dc search-backend-node: use new IndexableResultSet type as return type of engine#query
Signed-off-by: Mike Lewis <mtlewis@users.noreply.github.com>
2022-03-17 12:39:42 +00:00
Dimitris Apostolou aedd4daa66 Fix typos
Signed-off-by: Dimitris Apostolou <dimitris.apostolou@icloud.com>
2022-03-13 14:12:05 +02:00
Eric Peterson 3e54f6c436 Use @backstage/plugin-search-common instead of @backstage/search-common
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-04 18:47:55 +01:00
Eric Peterson 0547246b84 Clean up search-common/search-backend-node APIs, indicating beta.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:29:18 +01:00
Eric Peterson a151cf2a88 Finalize exports for search-backend-node module
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:58 +01:00
Eric Peterson c87be57d3a Update LunrSearchEngine to be stream-based
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:57 +01:00
Eric Peterson cef19ee966 Introduce a base classes to simplify stream-based implementations
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:57 +01:00
Eric Peterson ce3f566e9c Introduce test utilities for stream-based search implementations
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:57 +01:00
Eric Peterson 2eae26293e Update IndexBuilder to be a stream pipeline
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:57 +01:00
Eric Peterson 804c7906cf Update core search types to be stream-based
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
2022-03-02 17:26:56 +01:00
MT Lewis 634abc1a41 search: move DocumentTypeInfo to search-common
Signed-off-by: MT Lewis <mtlewis@users.noreply.github.com>
2022-01-25 13:01:40 +00:00
MT Lewis f6389e9e5d search-backend-node: track document visibility permission by type in IndexBuilder
Tracking permissions by collator ensures that all the documents of a
given type are authorized using the same permission. This is not
critical for result-by-result authorization, but will likely be a
useful constraint when adding in-engine permission filtering to
specific search engines in the future.

Signed-off-by: MT Lewis <mtlewis@users.noreply.github.com>
2022-01-25 13:01:38 +00:00
Fredrik Adelöw 5333451def Got rid of the last brace-typed and hyphen-less params etc
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2022-01-10 09:48:12 +01:00
Tomasz Szuba 428061d7e5 Add tests
Signed-off-by: Tomasz Szuba <tszuba@box.com>
2021-10-21 14:04:58 +02:00
Tomasz Szuba 0de67c4d2a Handle single-item array filter in Lunr search engine
Signed-off-by: Tomasz Szuba <tszuba@box.com>
2021-10-21 13:54:44 +02:00
Patrik Oldsberg 8142a8ecb2 packages,plugins: add package documentation
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2021-09-14 18:47:53 +02:00