apache / polaris

The interoperable, open source catalog for Apache Iceberg
http://polaris.io/
Apache License 2.0
1.01k stars 96 forks source link

[BUG] gradlew build and assemble fail #58

Open avriiil opened 1 month ago

avriiil commented 1 month ago

Describe the bug I'm following the quickstart. Both ./gradlew build and ./gradlew assemble fail with

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

more context from traceback below. I'm running OpenJDK 22.0.1 on MacOS

To Reproduce Steps to reproduce the behavior:

  1. clone polaris
  2. run ./gradlew build or ... assemble

System info (please complete the following information):

Additional context partial traceback from ./gradlew build

> Task :polaris-service:test FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':polaris-service:test'.
> There were failing tests. See the report at: file:///Users/rpelgrim/Documents/git/my-forks/polaris/polaris-service/build/reports/tests/test/index.html

* Try:
> Run with --scan to get full insights.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.9/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

Running with build scan yields:

image
snazy commented 1 month ago

Hey @avriiil how does the build fail? I don't see a build failure?

avriiil commented 1 month ago

@snazy -- build fails with

polaris ❯ ./gradlew build

> Task :polaris-service:test

PolarisSparkIntegrationTest > initializationError FAILED
    java.lang.IllegalStateException at PolarisSparkIntegrationTest.java:78

428 tests completed, 1 failed, 6 skipped

> Task :polaris-service:test FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':polaris-service:test'.
> There were failing tests. See the report at: file:///Users/rpelgrim/Documents/git/my-forks/polaris/polaris-service/build/reports/tests/test/index.html

* Try:
> Run with --scan to get full insights.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.9/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD FAILED in 38s
39 actionable tasks: 7 executed, 32 up-to-date

I just tried assemble again and that does work, so it may be a failing test. But I'm a total gradle noob so not sure 😅

avriiil commented 1 month ago

tried ./gradlew runApp after the assemble but it looks like it's hanging on spinning up the app. or is this expected behaviour?

image
eric-maynard commented 1 month ago

@avriiil That looks like it's running. Are you able to interact with the service using the CLI?

findepi commented 3 weeks ago

The build works for me on Java 22, but the log suggests i have to have Java 21 installed as well, as it is being picked up e.g. for Kotlin.

polaris main$ jenv shell 22
polaris main$ ./gradlew --version

------------------------------------------------------------
Gradle 8.9
------------------------------------------------------------

Build time:    2024-07-11 14:37:41 UTC
Revision:      d536ef36a19186ccc596d8817123e5445f30fef8

Kotlin:        1.9.23
Groovy:        3.0.21
Ant:           Apache Ant(TM) version 1.10.13 compiled on January 4 2023
Launcher JVM:  22.0.2 (Azul Systems, Inc. 22.0.2+9)
Daemon JVM:    /Library/Java/JavaVirtualMachines/zulu-22.jdk/Contents/Home (no JDK specified, using current Java home)
OS:            Mac OS X 14.5 aarch64
polaris main$ ./gradlew build
Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details
Configuration on demand is an incubating feature.

> Configure project :
Kotlin does not yet support 22 JDK target, falling back to Kotlin JVM_21 JVM target

> Task :polaris-build-logic:compileKotlin
Kotlin does not yet support 22 JDK target, falling back to Kotlin JVM_21 JVM target
w: Inconsistent JVM-target compatibility detected for tasks 'compileJava' (22) and 'compileKotlin' (21).
This will become an error in Gradle 8.0.
Consider using JVM Toolchain: https://kotl.in/gradle/jvm/toolchain
Learn more about JVM-target validation: https://kotl.in/gradle/jvm/target-validation

OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
INFO  [2024-08-19 07:40:46,783] org.apache.spark.util.ShutdownHookManager: Shutdown hook called
INFO  [2024-08-19 07:40:46,784] org.apache.spark.util.ShutdownHookManager: Deleting directory /private/var/folders/6y/4x3jpqj54r3c3316sdxn_p400000gn/T/spark-24f9422a-3264-4593-b459-1cdbd69d7b44

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.9/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD SUCCESSFUL in 1m 34s
62 actionable tasks: 27 executed, 35 up-to-date
polaris main$ ./gradlew assemble
Configuration on demand is an incubating feature.

> Task :polaris-build-logic:compileKotlin UP-TO-DATE
Kotlin does not yet support 22 JDK target, falling back to Kotlin JVM_21 JVM target

> Configure project :
Kotlin does not yet support 22 JDK target, falling back to Kotlin JVM_21 JVM target

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.9/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD SUCCESSFUL in 860ms
28 actionable tasks: 1 executed, 27 up-to-date
collado-mike commented 1 week ago

The original build likely failed because you didn't have Docker running. That particular test requires Docker, but you wouldn't see that without enabling --info and --stacktrace