Skip to content

[CALCITE-3140][CALCITE-3141] Failures in slow tests & CI#1375

Merged
zabetak merged 2 commits intoapache:masterfrom
zabetak:calcite-3140-3141
Nov 27, 2019
Merged

[CALCITE-3140][CALCITE-3141] Failures in slow tests & CI#1375
zabetak merged 2 commits intoapache:masterfrom
zabetak:calcite-3140-3141

Conversation

@zabetak
Copy link
Member

@zabetak zabetak commented Aug 13, 2019

No description provided.

@zabetak zabetak changed the title [CALCITE-3140][CALCITE-3141] Failures in slow tests & CI [WIP][CALCITE-3140][CALCITE-3141] Failures in slow tests & CI Aug 19, 2019
@zabetak
Copy link
Member Author

zabetak commented Nov 22, 2019

@vlsi I am planning to rebase soon in order to remove all those messy commits and take care of your comments. Let me know if you want me to wait a bit longer.

@vlsi
Copy link
Contributor

vlsi commented Nov 22, 2019

Let me know if you want me to wait a bit longer

Please feel free to rebase whenever you think it is right.

@zabetak zabetak force-pushed the calcite-3140-3141 branch 2 times, most recently from ef44935 to 63f89c3 Compare November 22, 2019 11:31
@zabetak zabetak changed the title [WIP][CALCITE-3140][CALCITE-3141] Failures in slow tests & CI [CALCITE-3140][CALCITE-3141] Failures in slow tests & CI Nov 22, 2019
@vlsi
Copy link
Contributor

vlsi commented Nov 22, 2019

There's https://stackoverflow.com/a/58618280/1261287 , so we could add the following (to the regular CI workflow)

- if: contains(github.event.head_commit.message, 'slow_test_please')
... testSlow

to enable running slow tests in case it is needed (e.g. in your case when you are altering the job config, and nobody is sure it would work without trying)

WDYT?

@zabetak
Copy link
Member Author

zabetak commented Nov 22, 2019

Adding a conditional job seems like a good idea! I will give it a try.

Other than that there are ways to test that the new config works (e.g., https://github.com/zabetak/calcite/runs/315831584).

1. Handle errors in SqlOperatorBaseTest#testArgumentBounds skipping problematic calls with appropriate explanation.
2. Introduce Bug#CALCITE_3243 related with failures in SqlOperatorBaseTest#testArgumentBounds.
3. Errors and exceptions in SqlOperatorBaseTest#testArgumentBounds are not that different so log everything instead of rethrowing errors.
4. Improve the error messages in SqlOperatorBaseTest#testArgumentBounds by trying to find the most descriptive cause for the failure.
5. Use logger instead of System.out in SqlOperatorBaseTest#testArgumentBounds for printing messages.
6. Skip queries 2 and 7 of TpchTest due to CALCITE-2223 and infinite planning bug.
7. Increase the timeout by 2 in FoodmartTest to avoid (marginal) failures (i.e., queries 2420, 5894) in slower machines.
8. Update stale plan in TpcdsTest#testQuery17Plan.
1. Replace @category(SlowTests.class) with @tag("slow").
2. Replace junit4 APIs with junit5 APIs when @tag annotation is used since mixed usages do not work well together.
3. Use exclusively the @tag("slow") annotation for tagging slow tests.
4. Remove usages of calcite.test.slow system property for annotating slow tests.
5. Replace @ignore("slow") with @tag("slow") enabling a few more slow tests.
6. Add testSlow task in Gradle for running slow tests.
7. Exclude slow test execution from normal Gradle build and test.
8. Add GitHub Action for running slow tests on demand (by adding
'slow-tests-needed' label) in a PR and on every push to the master.
9. Update site instructions for running slow tests.
10. Silence logger in SqlOperatorBaseTest since it generates huge logs.
11. Remove execution of slow test from Travis.
12. Refactor FoodmartTest based on the needs of the new @ParameterizedTest API.
13. Add header and description in main.yml file.
@zabetak zabetak merged commit eb71946 into apache:master Nov 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants