{"record":{"id":"bde33ec67482a8b2","repo":"apache/beam","slug":"bigquerymetastorecatalog-doesn-t-support-java-8","errorCode":null,"errorMessage":"BigQueryMetastoreCatalog doesn't support Java 8","messagePattern":"BigQueryMetastoreCatalog doesn't support Java 8","errorType":"console","errorClass":"StopExecutionException","httpStatus":null,"severity":"error","filePath":"sdks/java/io/iceberg/build.gradle","lineNumber":234,"sourceCode":"    }\n    systemProperty \"beamTestPipelineOptions\", JsonOutput.toJson(args)\n\n    // Disable Gradle cache: these ITs interact with live service that should always be considered \"out of date\"\n    outputs.upToDateWhen { false }\n\n    filter {\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testRead'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testReadWithFilter'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testStreamingRead'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testWrite'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testWriteRead'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testReadWriteStreaming'\n        includeTestsMatching 'org.apache.beam.sdk.io.iceberg.catalog.BigQueryMetastoreCatalogIT.testStreamToPartitionedDynamicDestinations'\n    }\n\n    doLast {\n        if (usingJava8) {\n            throw new StopExecutionException(\"BigQueryMetastoreCatalog doesn't support Java 8\");\n        }\n    }\n\n    maxParallelForks 4\n    classpath = sourceSets.test.runtimeClasspath\n    testClassesDirs = sourceSets.test.output.classesDirs\n}\n\ntask loadTest(type: Test) {\n    systemProperty \"beamTestPipelineOptions\", JsonOutput.toJson([\n            \"--project=${gcpProject}\",\n            \"--tempLocation=${gcpTempLocation}\",\n            \"--testSize=large\",\n            \"--runner=DataflowRunner\",\n            \"--region=us-central1\"\n    ])\n\n    // Disable Gradle cache: these ITs interact with live service that should always be considered \"out of date\"","sourceCodeStart":216,"sourceCodeEnd":252,"githubUrl":"https://github.com/apache/beam/blob/12126d8942aaf848030c478b4c6a28c6af861c66/sdks/java/io/iceberg/build.gradle#L216-L252","documentation":"The Iceberg IO integration test suite in Beam throws StopExecutionException when the build runs on Java 8, because BigQueryMetastoreCatalog tests rely on APIs unavailable in Java 8. It is a deliberate build-time guard, not a runtime failure.","triggerScenarios":"Running `./gradlew :sdks:java:io:iceberg:...` Iceberg tests (e.g. BigQueryMetastoreCatalogIT) with a Java 8 toolchain/JVM, where the `usingJava8` flag is true in the doLast block.","commonSituations":"CI pipelines still pinned to JDK 8 running the full Java test matrix; developers with JAVA_HOME pointing at Java 8 trying to execute Iceberg integration tests.","solutions":["Run the build/tests with JDK 11 or newer (set JAVA_HOME or org.gradle.java.home).","Use Gradle toolchain options (-Pjava11Home / --java11-home style flags used in Beam builds) to select a newer JVM for test execution.","Skip the BigQueryMetastoreCatalog tests on Java 8 if Java 8 execution is mandatory."],"exampleFix":"// before\nJAVA_HOME=/usr/lib/jvm/java-8-openjdk ./gradlew :sdks:java:io:iceberg:integrationTest\n// after\nJAVA_HOME=/usr/lib/jvm/java-17-openjdk ./gradlew :sdks:java:io:iceberg:integrationTest","handlingStrategy":"validation","validationCode":"if [[ \"$JAVA_VERSION\" == 1.8* || \"$JAVA_VERSION\" == 8* ]]; then echo 'Use JDK 11+ for Iceberg tests'; exit 1; fi","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Pin JDK 11+ for Beam Java builds via JAVA_HOME or org.gradle.java.home.","Add a pre-build check in CI that fails fast on Java 8 for Iceberg test tasks."],"tags":["gradle","java","iceberg","build"],"backgroundTag":"unsupported-platform","analyzedSha":"12126d8942aaf848030c478b4c6a28c6af861c66","analyzedAt":"2026-09-13T01:50:10.254Z","contentChangedAt":"2026-09-13T01:50:10.254Z","schemaVersion":2},"datasetVersion":"2026-09-20T03:17:13.778Z"}