diff --git a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleDatabaseOnDocker.scala b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleDatabaseOnDocker.scala index 88bb23f9c653e..dd6bbf0af8a33 100644 --- a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleDatabaseOnDocker.scala +++ b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleDatabaseOnDocker.scala @@ -17,12 +17,7 @@ package org.apache.spark.sql.jdbc -import java.io.{File, PrintWriter} - -import com.github.dockerjava.api.model._ - import org.apache.spark.internal.Logging -import org.apache.spark.util.Utils class OracleDatabaseOnDocker extends DatabaseOnDocker with Logging { lazy override val imageName = @@ -38,30 +33,4 @@ class OracleDatabaseOnDocker extends DatabaseOnDocker with Logging { override def getJdbcUrl(ip: String, port: Int): String = { s"jdbc:oracle:thin:system/$oracle_password@//$ip:$port/freepdb1" } - - override def beforeContainerStart( - hostConfigBuilder: HostConfig, - containerConfigBuilder: ContainerConfig): Unit = { - try { - val dir = Utils.createTempDir() - val writer = new PrintWriter(new File(dir, "install.sql")) - // SPARK-46592: gvenzl/oracle-free occasionally fails to start with the following error: - // 'ORA-04021: timeout occurred while waiting to lock object', when initializing the - // SYSTEM user. This is due to the fact that the default DDL_LOCK_TIMEOUT is 0, which - // means that the lock will no wait. We set the timeout to 30 seconds to try again. - // TODO: This workaround should be removed once the issue is fixed in the image. - // https://github.com/gvenzl/oci-oracle-free/issues/35 - writer.write("ALTER SESSION SET DDL_LOCK_TIMEOUT = 30;\n") - writer.write(s"""ALTER USER SYSTEM IDENTIFIED BY "$oracle_password";""") - writer.close() - val newBind = new Bind( - dir.getAbsolutePath, - new Volume("/docker-entrypoint-initdb.d"), - AccessMode.DEFAULT) - hostConfigBuilder.withBinds(hostConfigBuilder.getBinds :+ newBind: _*) - } catch { - case e: Exception => - logWarning("Failed to create install.sql file", e) - } - } } diff --git a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleIntegrationSuite.scala b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleIntegrationSuite.scala index 1eee65986fccd..2b2596289548c 100644 --- a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleIntegrationSuite.scala +++ b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/OracleIntegrationSuite.scala @@ -54,11 +54,11 @@ import org.apache.spark.tags.DockerTest * A sequence of commands to build the Oracle Database Free container image: * $ git clone https://github.com/oracle/docker-images.git * $ cd docker-images/OracleDatabase/SingleInstance/dockerfiles - * $ ./buildContainerImage.sh -v 23.2.0 -f - * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.2.0-free + * $ ./buildContainerImage.sh -v 23.4.0 -f + * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.4.0-free * - * This procedure has been validated with Oracle Database Free version 23.2.0, - * and with Oracle Express Edition versions 18.4.0 and 21.3.0 + * This procedure has been validated with Oracle Database Free version 23.4.0, + * and with Oracle Express Edition versions 18.4.0 and 21.4.0 */ @DockerTest class OracleIntegrationSuite extends DockerJDBCIntegrationSuite with SharedSparkSession { diff --git a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleIntegrationSuite.scala b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleIntegrationSuite.scala index b35018ec16dce..5d630dd7bd61d 100644 --- a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleIntegrationSuite.scala +++ b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleIntegrationSuite.scala @@ -48,12 +48,12 @@ import org.apache.spark.tags.DockerTest * * A sequence of commands to build the Oracle Database Free container image: * $ git clone https://github.com/oracle/docker-images.git - * $ cd docker-images/OracleDatabase/SingleInstance/dockerfiles - * $ ./buildContainerImage.sh -v 23.2.0 -f - * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.2.0-free + * $ cd docker-images/OracleDatabase/SingleInstance/dockerfiles0 + * $ ./buildContainerImage.sh -v 23.4.0 -f + * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.4.0-free * - * This procedure has been validated with Oracle Database Free version 23.2.0, - * and with Oracle Express Edition versions 18.4.0 and 21.3.0 + * This procedure has been validated with Oracle Database Free version 23.4.0, + * and with Oracle Express Edition versions 18.4.0 and 21.4.0 */ @DockerTest class OracleIntegrationSuite extends DockerJDBCIntegrationV2Suite with V2JDBCTest { diff --git a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleNamespaceSuite.scala b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleNamespaceSuite.scala index 05f38102d4101..48f8282e58804 100644 --- a/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleNamespaceSuite.scala +++ b/connector/docker-integration-tests/src/test/scala/org/apache/spark/sql/jdbc/v2/OracleNamespaceSuite.scala @@ -46,11 +46,11 @@ import org.apache.spark.tags.DockerTest * A sequence of commands to build the Oracle Database Free container image: * $ git clone https://github.com/oracle/docker-images.git * $ cd docker-images/OracleDatabase/SingleInstance/dockerfiles - * $ ./buildContainerImage.sh -v 23.2.0 -f - * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.2.0-free + * $ ./buildContainerImage.sh -v 23.4.0 -f + * $ export ORACLE_DOCKER_IMAGE_NAME=oracle/database:23.4.0-free * - * This procedure has been validated with Oracle Database Free version 23.2.0, - * and with Oracle Express Edition versions 18.4.0 and 21.3.0 + * This procedure has been validated with Oracle Database Free version 23.4.0, + * and with Oracle Express Edition versions 18.4.0 and 21.4.0 */ @DockerTest class OracleNamespaceSuite extends DockerJDBCIntegrationSuite with V2JDBCNamespaceTest {