-
Notifications
You must be signed in to change notification settings - Fork 28.9k
[SPARK-9818][SQL][WIP]Revert SPARK-6136 to enable jdbc tests using docker #8101
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
Conversation
|
Test build #40441 has finished for PR 8101 at commit
|
|
Test build #40444 has finished for PR 8101 at commit
|
|
Jenkins, retest this please. |
|
Test build #40448 has finished for PR 8101 at commit
|
|
I think that our Jenkins actually has Docker installed now, so in principle there should be a way to automate these tests once we get them working. |
|
Test build #40632 has finished for PR 8101 at commit
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: MySQLIntegrationSuite
|
Thanks for working on this! I'd love to get these tests running again. |
|
Test build #40649 has finished for PR 8101 at commit
|
|
|
Test build #40725 has finished for PR 8101 at commit
|
|
Jenkins, retest this please. |
|
Test build #40727 has finished for PR 8101 at commit
|
|
Jenkins, retest this please. |
|
Test build #40751 has finished for PR 8101 at commit
|
|
pull |
|
Can we retry? Only do it if it doesn't exist?
|
|
Test build #40861 has finished for PR 8101 at commit
|
|
Test build #40865 has finished for PR 8101 at commit
|
|
Test build #40878 has finished for PR 8101 at commit
|
|
Test build #40945 has finished for PR 8101 at commit
|
|
Test build #40943 has finished for PR 8101 at commit
|
|
Test build #40957 has finished for PR 8101 at commit
|
|
Test build #41921 has finished for PR 8101 at commit
|
|
Test build #41926 has finished for PR 8101 at commit
|
|
Pull mysql image would sometimes fail even with 5 retries... |
|
cc @marmbrus what do you think? Is there a way we can preload the images on Jenkins? |
|
Where are the errors with pulling the image? |
|
Sorry for my late reply. PostgresIntegrationSuite would fail with: |
|
After exploring all the build failure above, Mysql test only fails with |
|
I'll trigger more test build now. |
|
Jenkins, retest this please. |
3 similar comments
|
Jenkins, retest this please. |
|
Jenkins, retest this please. |
|
Jenkins, retest this please. |
|
Test build #42476 has finished for PR 8101 at commit
|
|
Test build #42473 has finished for PR 8101 at commit
|
|
Test build #42474 has finished for PR 8101 at commit
|
|
Test build #42480 has finished for PR 8101 at commit
|
|
It seems when test build triggered for multiple times in a row, only the first test build would fail and all subsequent builds success. |
|
I'd like to help get this patch merged so that we can re-run these tests, but before we put a lot more work into polishing it I would like to figure out whether our regular Jenkins build is the right place to run these tests. These tests are fairly heavyweight to run (since they have to download a bunch of Docker images) and might add significant amounts of time to the test runs. Therefore, I think we should skip them for the majority of pull requests and should only run them when JDBC-related code is changed (maybe just code under the Similarly, we may not want to run these tests as part of every master build. Over time, I imagine that we'll accumulate larger-and-larger regression test suites here and they're going to add a huge cost for most builds. Therefore, I think that we should try to tag these suites so that they're not run as part of most master builds but are only run once per day or something like that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One concern: this has the potential to become flaky if the image is updated. I'd prefer to freeze a particular version here, for the same reason that I like things like Maven and pip --freeze.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1, at least we should keep on the same version of the rdbms in question (as sometimes there are tweaks, enhancements on the docker image itself)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey, so what's the deal with this? Is this factory still necessary or was it an artifact of legacy Docker bugs or docker-client issues?
This patch re-enables tests for the Docker JDBC data source. These tests were reverted in #4872 due to transitive dependency conflicts introduced by the `docker-client` library. This patch should avoid those problems by using a version of `docker-client` which shades its transitive dependencies and by performing some build-magic to work around problems with that shaded JAR. In addition, I significantly refactored the tests to simplify the setup and teardown code and to fix several Docker networking issues which caused problems when running in `boot2docker`. Closes #8101. Author: Josh Rosen <[email protected]> Author: Yijie Shen <[email protected]> Closes #9503 from JoshRosen/docker-jdbc-tests. (cherry picked from commit 1dde39d) Signed-off-by: Reynold Xin <[email protected]>
It's just working in progress, not ready to be reviewed.
I'd like to see if this breaks something.