Skip to content

Commit

Permalink
[Search] [Playground] [Bug Fix] Model id detection fix when using sea…
Browse files Browse the repository at this point in the history
…rch based dynamic template (elastic#186665)

## Summary

model_id detection relies on creating an aggregation for the model_id
field which requires a keyword field. This is usually added to the
`.keyword` multi-field. The issue is when using the `search` dynamic
template, all text based fields create a keyword field with the `enum`
key.

This fix iterates through all the sub fields of the model_id field to
find a keyword based one, rather than relying on the `.keyword`
subfield.

### Checklist

Delete any items that are not applicable to this PR.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

(cherry picked from commit 175b41a)

# Conflicts:
#	x-pack/plugins/search_playground/__mocks__/fetch_query_source_fields.mock.ts
#	x-pack/plugins/search_playground/server/lib/fetch_query_source_fields.test.ts
  • Loading branch information
joemcelroy committed Jun 24, 2024
1 parent 1619041 commit c6ed86b
Show file tree
Hide file tree
Showing 3 changed files with 642 additions and 15 deletions.
Loading

0 comments on commit c6ed86b

Please sign in to comment.