diff --git a/build.gradle.kts b/build.gradle.kts index 0dee92979d..04895afd01 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -90,7 +90,6 @@ tasks.named("rat").configure { excludes.add("logs/**") excludes.add("service/common/src/**/banner.txt") - excludes.add("quarkus/service/logs") excludes.add("site/node_modules/**") excludes.add("site/layouts/robots.txt") diff --git a/integration-tests/src/main/java/org/apache/polaris/service/it/test/PolarisSparkIntegrationTest.java b/integration-tests/src/main/java/org/apache/polaris/service/it/test/PolarisSparkIntegrationTest.java index dc7c45ac05..2a76f118e0 100644 --- a/integration-tests/src/main/java/org/apache/polaris/service/it/test/PolarisSparkIntegrationTest.java +++ b/integration-tests/src/main/java/org/apache/polaris/service/it/test/PolarisSparkIntegrationTest.java @@ -27,6 +27,7 @@ import jakarta.ws.rs.client.Entity; import jakarta.ws.rs.core.Response; import java.io.IOException; +import java.nio.file.Path; import java.time.Instant; import java.util.List; import java.util.Map; @@ -54,6 +55,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.api.io.TempDir; import org.slf4j.LoggerFactory; @ExtendWith(PolarisIntegrationTestExtension.class) @@ -70,6 +72,8 @@ public class PolarisSparkIntegrationTest { private String catalogName; private String externalCatalogName; + @TempDir public Path warehouseDir; + @BeforeAll public static void setup() throws IOException { s3Container.start(); @@ -183,6 +187,7 @@ private SparkSession.Builder withCatalog(SparkSession.Builder builder, String ca .config( String.format("spark.sql.catalog.%s", catalogName), "org.apache.iceberg.spark.SparkCatalog") + .config("spark.sql.warehouse.dir", warehouseDir.toString()) .config(String.format("spark.sql.catalog.%s.type", catalogName), "rest") .config( String.format("spark.sql.catalog.%s.uri", catalogName), diff --git a/quarkus/service/build.gradle.kts b/quarkus/service/build.gradle.kts index 669e54c570..7b9b177ec9 100644 --- a/quarkus/service/build.gradle.kts +++ b/quarkus/service/build.gradle.kts @@ -146,7 +146,6 @@ dependencies { tasks.withType(Test::class.java).configureEach { systemProperty("java.util.logging.manager", "org.jboss.logmanager.LogManager") - addSparkJvmOptions() if (System.getenv("AWS_REGION") == null) { environment("AWS_REGION", "us-west-2") } @@ -160,7 +159,22 @@ tasks.withType(Test::class.java).configureEach { tasks.named("test").configure { maxParallelForks = 4 } -tasks.named("intTest").configure { maxParallelForks = 1 } +tasks.named("intTest").configure { + maxParallelForks = 1 + val logsDir = project.layout.buildDirectory.get().asFile.resolve("logs") + // delete files from previous runs + doFirst { + // delete log files written by Polaris + logsDir.deleteRecursively() + // delete quarkus.log file (captured Polaris stdout/stderr) + project.layout.buildDirectory.get().asFile.resolve("quarkus.log").delete() + } + // This property is not honored in a per-profile application.properties file, + // so we need to set it here. + systemProperty("quarkus.log.file.path", logsDir.resolve("polaris.log").absolutePath) + // For Spark integration tests + addSparkJvmOptions() +} /** * Adds the JPMS options required for Spark to run on Java 17, taken from the