-
Notifications
You must be signed in to change notification settings - Fork 28.9k
[SPARK-11796] [test-maven] [WIP] Fixing httpclient and httpcore depedency issues related to docker-client #9876
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
|
Jenkins, test this please. |
|
Josh, it would be good test this after removing the disabling of the test in Jenkins. I am happy to try that out but I am not sure I have the right privileges on Jenkins. Feedback/thoughts welcome. |
|
@mark, put |
|
Jenkins, this is ok to test. |
|
Test build #46462 has finished for PR 9876 at commit
|
|
Jenkins, retest this please. |
|
Test build #46467 has finished for PR 9876 at commit
|
|
Thanks Josh. So, I have a good news and bad news. The good news is that the maven/dependency related issues have been resolved. The bad news is that the tests are still failing, albeit due to MySQL and PostgreSQL drivers not being accessible. The error is pasted here for easier access: |
|
My hunch is that you'll have to declare an explicit dependency on those drivers, since I think that there's a difference between Maven and SBT handling of test-jars' transitive dependencies. See |
|
OK, I will do that. I am afk for some time but will take care of this when
|
|
Should the client/core versions match up? and be declared as one global version? |
|
FWIW it would probably be easier to produce a new release of the Docker client which properly relocates and shades dependencies; see my comments + discussion at spotify/docker-client#272. In the meantime, though, doing dependency hacks that are isolated to this Maven subproject seems fine to me. |
… tests. Also, adding the same driver depedencies in dependency management section of root pom so they can be shared amongst various modules (e.g. sql)
|
Thanks @JoshRosen For now, I have added the mysql and postgresql drivers as dependencies and the tests pass now. We just have to make sure that the CI environment has the docker engine and environment set up properly. Medium term, I agree about new release of Docker client being the right solution. |
|
Jenkins, retest this please. |
|
Test build #47399 has finished for PR 9876 at commit
|
|
The failure seems unrelated to my change, so I will ask Jenkins to retest. Also, I am not sure if I have the right permissions to trigger a new build and I'd appreciate if someone could add me to the whitelist. |
|
Jenkins, retest this please. |
|
Jenkins add to whitelist |
|
Thanks, @srowen! |
|
Test build #47456 has finished for PR 9876 at commit
|
|
LGTM. Thanks @markgrover! |
|
Tested locally and confirmed that these tests still run fine in SBT, so I'm going to merge this to master and branch-1.6. |
|
I'm going to update the PR title and description in the final commit so that they're no longer WIP / so verbose. |
… docker-client This commit fixes dependency issues which prevented the Docker-based JDBC integration tests from running in the Maven build. Author: Mark Grover <[email protected]> Closes #9876 from markgrover/master_docker. (cherry picked from commit 2166c2a) Signed-off-by: Josh Rosen <[email protected]>
|
Thanks so much, Josh! |
|
@srowen httpclient 4.5.* depends on versions of httpcore 4.4.* |
I was able to get past this error:
However, then I ran into some class not found errors like these:
Anyways, finally after trying a few more things and going through @JoshRosen 's previous discussion with docker-client folks, this patch is what I finally came up with.
It goes past all the ClassNotFound errors but on my mac, it gives 404 errors. So, I am trying to post the patch here, in case it doesn't pass on my local environment.