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
[SPARK-27155][TEST] Parameterize Oracle docker image name #24086
Conversation
@@ -55,7 +56,7 @@ class OracleIntegrationSuite extends DockerJDBCIntegrationSuite with SharedSQLCo | |||
import testImplicits._ | |||
|
|||
override val db = new DatabaseOnDocker { | |||
override val imageName = "wnameless/oracle-xe-11g:16.04" | |||
override val imageName = "deepdiver/docker-oracle-xe-11g:2.0" |
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.
Why do we need update this image?
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.
hmm.. who owns/licenses these images...
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.
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.
I see, but is the new image 'legal' either? is there an official one? and if not, should we be using or testing against it?
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.
I also have the same concerns on the legal stuff. If we don't have an official docker image, we had better remove OracleIntegrationSuite
from our docker test.
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.
Seems there is no official Oracle docker image, can we Ignore this Test to pass the docker integration test?
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.
I think it should be deleted if there is no legitimate way to test this
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.
agreed there.. one possible approach is to leave the image name as a parameter and document that someone needs to build one..
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.
Looks like this is how you build it:
https://github.com/oracle/docker-images/blob/master/OracleDatabase/SingleInstance/README.md
but looks like indeed you have to supply the binaries as they're not freely available.
Yes at best I think we'd need to disable this test and parameterize it, as it's not going to work reliably anyway.
Add a parameter SPARK_ORACLE_DOCKER_IMAGE_NAME for Oracle tests. |
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.
Is there a way to disable this test also, if it's run automatically? or at least skip its execution if no image is specified?
@@ -55,7 +55,8 @@ class OracleIntegrationSuite extends DockerJDBCIntegrationSuite with SharedSQLCo | |||
import testImplicits._ | |||
|
|||
override val db = new DatabaseOnDocker { | |||
override val imageName = "wnameless/oracle-xe-11g:16.04" | |||
override val imageName = sys.env.getOrElse("SPARK_ORACLE_DOCKER_IMAGE_NAME", | |||
"wnameless/oracle-xe-11g:16.04") |
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.
We can't even have a default; this default doesn't work
OK, is the point that this will never be run anyway unless someone runs it manually? Then I think this is OK if you remove the default (that doesn't exist anyway) and add a few more comments pointing to the oracle repo about how the image can be built. |
Should we update the PR description to reflect what its doing now in case some one refers to it later ? |
Test build #4646 has finished for PR 24086 at commit
|
* 2. Start docker - sudo service docker start | ||
* 3. Download oracle 11g driver jar and put it in maven local repo: | ||
* 1. Build Oracle database in Docker, please refer below link about how to. | ||
* @see https://github.com/oracle/docker-images/blob/master/OracleDatabase/SingleInstance/README.md |
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.
The line is too long, and the @see
tag doesn't work here I think. Put "See" on the previous line and unindent to see if that gets it to under 100 characters
reset this please. |
Test build #4651 has started for PR 24086 at commit |
""" | ||
|INSERT INTO ts_with_timezone VALUES ( | ||
|1, to_timestamp_tz('1999-12-01 11:00:00 UTC','YYYY-MM-DD HH:MI:SS TZR')) | ||
""".stripMargin).executeUpdate() |
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.
indentation?
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.
Or @lipzhu why did this part change? I may be missing it but it seems like just a formatting change. I don't think it's necessary
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.
@srowen Yes, it is just a formatting change, I see these 2 codes' style is not consistent with the others in this suite. If you think it it not necessary, I will change them back.
Test build #4660 has finished for PR 24086 at commit
|
Test build #4661 has finished for PR 24086 at commit
|
Merged to master |
@dongjoon-hyun Hi, i was trying to follow the instructions in OracleIntegrationSuite to try and build an image to run the oracle tests. I was trying it on mac.. Haven't been able to. Were you able to run this successfully ? Please let me know .. I get the following error when i try to build the image.
|
Hi, @dilipbiswal . |
Yeah, I'm not clear one would be able to use this at all without an Oracle license. I guess I'd be surprised if there's any free public Oracle DB image out there. |
@dongjoon-hyun Oh... actually i just needed a little help to get the oracle tests to run as i am trying to fix a defect that would require me to add a test in this suite. I just used this recent PR to ask the question :-) |
@dongjoon-hyun A quick update: I got hold of an un-official image and got the tests to pass. So i am not blocked at the moment :-) |
What changes were proposed in this pull request?
Update Oracle docker image name.
How was this patch tested?
./build/mvn test -Pdocker-integration-tests -pl :spark-docker-integration-tests_2.12