Skip to content

Conversation

@romseygeek
Copy link
Contributor

FVH was relying on SourceLookup.extractRawValues() to load its data, but this no
longer works for multifields. It should instead use value fetchers which will correctly
locate the input for multifields and/or copy fields.

Fixes #84690
Fixes #82458
Fixes #80895
Fixes #75011

@romseygeek romseygeek self-assigned this Apr 12, 2022
@elasticmachine elasticmachine added the Team:Search Meta label for search team label Apr 12, 2022
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-search (Team:Search)

@elasticsearchmachine
Copy link
Collaborator

Hi @romseygeek, I've created a changelog YAML for you.

Copy link
Contributor

@mayya-sharipova mayya-sharipova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@romseygeek Thanks Alan, this LGTM! Great to close all 4 issues.


public class FastVectorHighlighterTests extends HighlighterTestCase {

public void testHighlightingMultiFields() throws IOException {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice tests!

@romseygeek romseygeek merged commit a69cdd0 into elastic:master Apr 12, 2022
@romseygeek romseygeek deleted the highlighter/fvh-multifields branch April 12, 2022 14:19
@Daantie
Copy link

Daantie commented Apr 12, 2022

@romseygeek thanks for fixing this!

@mayya-sharipova I noticed the tag v8.3.0, will it be released only in that version, or will there be minor releases of lower versions as well? As the issues fixed by this started from 7.14.

weizijun added a commit to weizijun/elasticsearch that referenced this pull request Apr 13, 2022
* upstream/master: (40 commits) Fix BuildTests serialization (elastic#85827) Use urgent priority for node shutdown cluster state update (elastic#85838) Remove Task classes from HLRC (elastic#85835) Remove unused migration classes (elastic#85834) Remove uses of Charset name parsing (elastic#85795) Remove legacy versioned logic for DefaultSystemMemoryInfo (elastic#85761) Expose proxy settings for GCS repositories (elastic#85785) Remove SLM classes from HLRC (elastic#85825) TSDB: fix the time_series in order collect priority (elastic#85526) Remove ILM classes from HLRC (elastic#85822) FastVectorHighlighter should use ValueFetchers to load source data (elastic#85815) Iteratively execute synchronous ingest processors (elastic#84250) Remove TransformClient from HLRC (elastic#85787) Mute XPackRestIT deprecation/10_basic/Test Deprecations (elastic#85807) Unmute Lintian packaging test (elastic#85778) Add a highlighter unit test base class (elastic#85719) Remove NIO Transport Plugin (elastic#82085) [TEST] Remove token methods from HLRC SecurityClient (elastic#85515) [Test] Use thread-safe hashSet for result collection (elastic#85653) [TEST] Mute BuildTests.testSerialization (elastic#85801) ... # Conflicts: #	server/src/test/java/org/elasticsearch/search/aggregations/timeseries/TimeSeriesIndexSearcherTests.java
@jtibshirani
Copy link
Contributor

@romseygeek what would you think about backporting this to 7.17 ? It seems quite a few users are running into it (most recently #87185).

@romseygeek
Copy link
Contributor Author

We'd also need to backport #85719, but I think it's reasonable to do both

romseygeek added a commit to romseygeek/elasticsearch that referenced this pull request Jun 7, 2022
…lastic#85815) FVH was relying on `SourceLookup.extractRawValues()` to load its data, but this no longer works for multifields. It should instead use value fetchers which will correctly locate the input for multifields and/or copy fields. Fixes elastic#84690 Fixes elastic#82458 Fixes elastic#80895 Fixes elastic#75011
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

>bug :Search Relevance/Highlighting How a query matched a document Team:Search Meta label for search team v7.17.5 v8.3.0

6 participants