Skip to content

fix UpdateSettingsRequestStreamableTests.mutateInstance #39386

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
Feb 27, 2019

Conversation

talevy
Copy link
Contributor

@talevy talevy commented Feb 26, 2019

Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in -Dtests.seed=7F4C034C43C22B1B to
fail.

Now, new TimeValue objects are being supplied and tested in the randomization equality check.

CI failure:

link: https://elasticsearch-ci.elastic.co/job/elastic+elasticsearch+master+intake/2222

reproduction:

./gradlew :server:unitTest -Dtests.seed=7F4C034C43C22B1B -Dtests.class=org.elasticsearch.action.admin.indices.settings.put.UpdateSettingsRequestStreamableTests -Dtests.method="testEqualsAndHashcode" -Dtests.security.manager=true -Dtests.locale=no-NO -Dtests.timezone=Asia/Beirut -Dcompiler.java=11 -Druntime.java=8

error message:

04:03:35 FAILURE 0.02s J5 | UpdateSettingsRequestStreamableTests.testEqualsAndHashcode <<< FAILURES!
04:03:35    > Throwable #1: java.lang.AssertionError: UpdateSettingsRequest mutation should not be equal to original
04:03:35    > Expected: not <indices : [index-wtwix, index-rga],{}>
04:03:35    >      but: was <indices : [index-wtwix, index-rga],{}>
04:03:35    > 	at __randomizedtesting.SeedInfo.seed([7F4C034C43C22B1B:E437B818C256234]:0)
04:03:35    > 	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
04:03:35    > 	at org.elasticsearch.test.EqualsHashCodeTestUtils.checkEqualsAndHashCode(EqualsHashCodeTestUtils.java:82)
04:03:35    > 	at org.elasticsearch.test.AbstractWireTestCase.testEqualsAndHashcode(AbstractWireTestCase.java:61)

Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
@talevy talevy added >non-issue >test Issues or PRs that are addressing/adding tests :Core/Infra/Settings Settings infrastructure and APIs labels Feb 26, 2019
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra

Copy link
Member

@original-brownbear original-brownbear left a comment

Choose a reason for hiding this comment

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

LGTM :)

@talevy talevy merged commit 863636d into elastic:master Feb 27, 2019
@talevy talevy deleted the fix-updatesettingsmutate branch February 27, 2019 19:29
@talevy talevy added the v8.0.0 label Feb 27, 2019
talevy added a commit to talevy/elasticsearch that referenced this pull request Feb 27, 2019
Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
talevy added a commit to talevy/elasticsearch that referenced this pull request Feb 27, 2019
Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
talevy added a commit that referenced this pull request Feb 27, 2019
)

Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
talevy added a commit that referenced this pull request Mar 1, 2019
)

Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
rjernst pushed a commit that referenced this pull request Sep 27, 2019
Mutations of the timeout values were using string-representations.

This resulted in very rare cases where the original timeout value was
represented as something like "0ms" and the new random time-value generated
was "0s". Although their string representations differ, their underlying
TimeValue does not. This resulted in `-Dtests.seed=7F4C034C43C22B1B` to
fail.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Core/Infra/Settings Settings infrastructure and APIs >non-issue >test Issues or PRs that are addressing/adding tests v7.0.0-rc1 v7.2.0 v8.0.0-alpha1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants