Skip to content

[CI] FiltersAggregatorTests.testMatchNoneTopLevel failing on master #74677

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

Closed
cbuescher opened this issue Jun 29, 2021 · 6 comments · Fixed by #74750
Closed

[CI] FiltersAggregatorTests.testMatchNoneTopLevel failing on master #74677

cbuescher opened this issue Jun 29, 2021 · 6 comments · Fixed by #74750
Assignees
Labels
:Analytics/Aggregations Aggregations Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) >test-failure Triaged test failures from CI v7.15.0 v8.0.0-alpha1

Comments

@cbuescher
Copy link
Member

cbuescher commented Jun 29, 2021

This happend on a local run but seems reproducable on master

Build scan:

Edit: this is from a CI test failure on Sunday that looks similar
https://gradle-enterprise.elastic.co/s/wphgk3nxj73jg

Repro line:

./gradlew ':server:test' --tests "org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.testMatchNoneTopLevel" -Dtests.seed=D315C18B9D436BD4 -Dtests.locale=zh-TW -Dtests.timezone=Africa/Timbuktu -Druntime.java=16

Reproduces locally?:

yes

Applicable branches:

master

Failure history:

Failure excerpt:

org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests > testMatchNoneTopLevel FAILED
    java.lang.AssertionError: Expected a map containing
                           test: a map containing
    segments_with_doc_count_field: <0>
       segments_with_deleted_docs: <0>
               segments_collected: <0>
                 segments_counted: expected <1> but was <2>
                          filters: a list containing
                                  0: a map containing
                                query: "MatchNoDocsQuery(\"User requested \"match_none\" query.\")"
                      specialized_for: "match_none"
        at __randomizedtesting.SeedInfo.seed([D315C18B9D436BD4:1A0FCEB66D3AF1FE]:0)
        at io.github.nik9000.mapmatcher.MapMatcher.assertMap(MapMatcher.java:78)
        at io.github.nik9000.mapmatcher.MapMatcher.assertMap(MapMatcher.java:61)
        at org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.lambda$testMatchNoneTopLevel$25(FiltersAggregatorTests.java:678)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.debugTestCase(AggregatorTestCase.java:634)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.lambda$debugTestCase$9(AggregatorTestCase.java:589)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.withIndex(AggregatorTestCase.java:553)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.debugTestCase(AggregatorTestCase.java:589)
        at org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.testMatchNoneTopLevel(FiltersAggregatorTests.java:669)
@cbuescher cbuescher added :Analytics/Aggregations Aggregations >test-failure Triaged test failures from CI v8.0.0 labels Jun 29, 2021
@elasticmachine elasticmachine added the Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) label Jun 29, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-analytics-geo (Team:Analytics)

@nik9000 nik9000 self-assigned this Jun 29, 2021
@tlrx
Copy link
Member

tlrx commented Jun 30, 2021

A different test in the same test suite failed today with a similar error: https://gradle-enterprise.elastic.co/s/vypetlhquslnk


org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests > testTermFilter FAILED
    java.lang.AssertionError: Expected a map containing
                           test: a map containing
    segments_with_doc_count_field: <0>
       segments_with_deleted_docs: <0>
               segments_collected: <0>
                 segments_counted: expected <1> but was <2>
                          filters: a list containing
                                  0: a map containing
                                query: "f:0"
                      specialized_for: "term"
                results_from_metadata: <2>
        at __randomizedtesting.SeedInfo.seed([4A87550F20633125:583542EB712611B0]:0)
        at io.github.nik9000.mapmatcher.MapMatcher.assertMap(MapMatcher.java:78)
        at io.github.nik9000.mapmatcher.MapMatcher.assertMap(MapMatcher.java:61)
        at org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.lambda$testTermFilter$27(FiltersAggregatorTests.java:717)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.debugTestCase(AggregatorTestCase.java:634)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.lambda$debugTestCase$9(AggregatorTestCase.java:589)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.withIndex(AggregatorTestCase.java:553)
        at org.elasticsearch.search.aggregations.AggregatorTestCase.debugTestCase(AggregatorTestCase.java:589)
        at org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.testTermFilter(FiltersAggregatorTests.java:708)
REPRODUCE WITH: ./gradlew ':server:test' --tests "org.elasticsearch.search.aggregations.bucket.filter.FiltersAggregatorTests.testTermFilter" -Dtests.seed=4A87550F20633125 -Dtests.locale=uk -Dtests.timezone=Africa/Banjul -Druntime.java=11

@tlrx
Copy link
Member

tlrx commented Jun 30, 2021

@nik9000 if you happen to look at this class, there are many CI failures for the following test in the past 7 days:

  • testTermFilter
  • testMatchNoneFilter
  • testTermTopLevel
  • testMatchAll
  • testMatchNoneTopLevel

@nik9000
Copy link
Member

nik9000 commented Jun 30, 2021

Sorry I hadn't picked this up yesterday. I'd lost it in the shuffle between morning emails and starting work for real. I'll dig now. Sorry for the noise!

nik9000 added a commit to nik9000/elasticsearch that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes elastic#74677
@nik9000
Copy link
Member

nik9000 commented Jun 30, 2021

Well that wasn't too bad! I was asserting that the indices I was testing with only had a single segment. By accident. Changed it to >=1 and it passed when I ran it hundreds of times.

nik9000 added a commit that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes #74677
nik9000 added a commit to nik9000/elasticsearch that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes elastic#74677
nik9000 added a commit to nik9000/elasticsearch that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes elastic#74677
nik9000 added a commit that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes #74677

Co-authored-by: Elastic Machine <[email protected]>
nik9000 added a commit that referenced this issue Jun 30, 2021
The tests for the debugging information in the filters aggregation where
too specific for the kind of randomization we run with. They asserted
that the indices contained only a single segment which is *usually*
true, but our test randomization framework sometimes emit many segmented
indices, just to exercise the code. That's a good thing. But the tests
had a wrong assertion. This swaps the assertion from `equalTo(1)` to
`greaterThanOrEqualTo(1)`.

Closes #74677

Co-authored-by: Elastic Machine <[email protected]>
@tlrx
Copy link
Member

tlrx commented Jul 1, 2021

Thanks Nik!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Analytics/Aggregations Aggregations Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) >test-failure Triaged test failures from CI v7.15.0 v8.0.0-alpha1
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants