arcadedb icon indicating copy to clipboard operation
arcadedb copied to clipboard

Gremlin doesn't work with Java 16+

Open lvca opened this issue 4 years ago • 1 comments
trafficstars

ArcadeDB Version: 21.9.1-SNAPSHOT

JDK Version: 16

OS: Mac

Expected behavior

Error on using Gremlin and Cypher.

Actual behavior

At runtime this exception is thrown from the Gremlin stack: Unsupported class file major version 60

Steps to reproduce

mvn clean install

lvca avatar Sep 01 '21 21:09 lvca

On Apache Tinkerpop Gremlin Jira seems it's an issue with Gradle and Gremlin.

lvca avatar Sep 01 '21 22:09 lvca

I tried to build the arcadedb-gremlin subproject with Java 17 and got the same issue, when executing the tests, not during compilation of the sources. Which basically means that the gremlin module is not functional, right?

gfinger avatar Dec 27 '22 18:12 gfinger

Gremlin uses Gradle that, AFAIK, doesn't work with JDK >14 or even 11.

lvca avatar Dec 27 '22 21:12 lvca

Gradle already supports JDK 19. It is Tinkerpop which supports a build with JDK 11 only. The message "Unsupported class file major version" might indicate an issue with serialization/deserialization of Java objects. The bad thing is, that because this issue occurs in pretty simple test-cases in the gremlin subproject, I'd assume that we not only have a build issue, but an issue at runtime too.

gfinger avatar Dec 28 '22 08:12 gfinger

From Gremlin Discord channel:

image

It looks like Java11 is the latest.

lvca avatar Dec 28 '22 16:12 lvca

I see Gremlin already fixes this issue with Gremlin 3.7.0. We'll switch to this release as soon as it will be out.

lvca avatar Jun 13 '23 03:06 lvca

Tinkerpop 3.7.0 has been released with support for JDK17, see: https://github.com/apache/tinkerpop/blob/master/CHANGELOG.asciidoc#tinkerpop-370-release-date-july-31-2023 @lvca will you include it in 23.7.1 (once the Tinkerpop jars are out)?

gramian avatar Aug 01 '23 11:08 gramian

I still don't see the artifacts on maven central, I think it still needs to be voted ok. My first pass would be upgrading to 3.6.5 and then testing well for 3.7 in the August release

lvca avatar Aug 01 '23 19:08 lvca

@lvca while some Gremlin tests are still failing (but not with the version error anymore), compiling and running with JDK17 (tested with OpenJDK17-headless) works with current head. Can this be closed now?

gramian avatar Aug 17 '23 05:08 gramian