Skip to content

[Tests] Fix rare edge case in SimpleQueryStringBuilderTests #35201

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 5, 2018

Conversation

cbuescher
Copy link
Member

If the random query string is "now" by accident and we are also not setting
some field names to use explicitely, then we can hit the "mapped_date" field
from default test setup. This correctly leads to the query being was marked as
not cacheable, but we assume and check so later. This change fixes this rare
edge case by making sure we don't hit the "date" field in this rare cases.

Closes #35183

If the random query string is "now" by accident _and_ we are also not setting
some field names to use explicitely, then we can hit the "mapped_date" field
from default test setup. This correctly leads to the query being was marked as
not cacheable, but we assume and check so later. This change fixes this rare
edge case by making sure we don't hit the "date" field in this rare cases.

Closes elastic#35183
@cbuescher cbuescher added >test Issues or PRs that are addressing/adding tests :Search/Search Search-related issues that do not fall into other categories v7.0.0 v6.6.0 labels Nov 2, 2018
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-search-aggs

// cacheable and trigger later test failures (see https://github.com/elastic/elasticsearch/issues/35183)
if (fieldCount == 0 && result.value().equalsIgnoreCase("now")) {
fields.put(STRING_FIELD_NAME_2, 2.0f / randomIntBetween(1, 20));
}
Copy link
Member Author

Choose a reason for hiding this comment

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

I don't like really like adding so many lines for a relatively rare case, but every other way (e.g. disallowing "now" altogether as a query string) would have been worse IMHO.

@cbuescher cbuescher merged commit 02043a2 into elastic:master Nov 5, 2018
cbuescher pushed a commit that referenced this pull request Nov 5, 2018
If the random query string is "now" by accident _and_ we are also not setting
some field names to use explicitely, then we can hit the "mapped_date" field
from default test setup. This correctly leads to the query being was marked as
not cacheable, but we assume and check so later. This change fixes this rare
edge case by making sure we don't hit the "date" field in this rare cases.

Closes #35183
cbuescher pushed a commit to cbuescher/elasticsearch that referenced this pull request Dec 13, 2018
A previous fix of a similar problem in elastic#35201 wasn't general enough, we also
need to catch cases where the randomly generated query string starts with some
version of "now" and hits a date field.

Closes elastic#36595
cbuescher pushed a commit that referenced this pull request Dec 14, 2018
A previous fix of a similar problem in #35201 wasn't general enough, we also
need to catch cases where the randomly generated query string starts with some
version of "now" and hits a date field.

Closes #36595
cbuescher pushed a commit that referenced this pull request Dec 14, 2018
A previous fix of a similar problem in #35201 wasn't general enough, we also
need to catch cases where the randomly generated query string starts with some
version of "now" and hits a date field.

Closes #36595
cbuescher pushed a commit that referenced this pull request Dec 14, 2018
A previous fix of a similar problem in #35201 wasn't general enough, we also
need to catch cases where the randomly generated query string starts with some
version of "now" and hits a date field.

Closes #36595
@jimczi jimczi added v7.0.0-beta1 and removed v7.0.0 labels Feb 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Search/Search Search-related issues that do not fall into other categories >test Issues or PRs that are addressing/adding tests v6.6.0 v7.0.0-beta1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[ci] SimpleQueryStringBuilderTests.testToQuery
4 participants