Skip to content

Unable to compile with tests on openjdk 21.0.10 and openjdk 8 #4890

@mrckzgl

Description

@mrckzgl

Please include configurations and logs if available.

For confirmed bugs, please report:

  • Version: b424a8f
  • Storage Backend: inmemory
  • Mixed Index Backend: does not matter
  • Expected Behavior: mvn clean install should execute without errors on master branch
  • Current Behavior: see below
  • Steps to Reproduce: execute mvn clean install on master branch

Running mvn clean install on current master branch results in inmemory tests to fail:

INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR]   InMemoryCustomIdTest>JanusGraphCustomIdTest.testWriteAndReadWithJanusGraphIoRegistryWithGryo:576->JanusGraphCustomIdTest.testWritingAndReading:626 » IllegalArgument Unable to create serializer "org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer" for class: java.util.concurrent.atomic.AtomicLong
[ERROR]   InMemoryGraphTest>JanusGraphTest.testWriteAndReadWithJanusGraphIoRegistryWithGryo:8664->JanusGraphTest.testWritingAndReading:8679 » IllegalArgument Unable to create serializer "org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer" for class: java.util.concurrent.atomic.AtomicLong
[ERROR]   InMemoryLazyLoadGraphTest>JanusGraphTest.testWriteAndReadWithJanusGraphIoRegistryWithGryo:8664->JanusGraphTest.testWritingAndReading:8679 » IllegalArgument Unable to create serializer "org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer" for class: java.util.concurrent.atomic.AtomicLong
[INFO] 
[ERROR] Tests run: 549, Failures: 0, Errors: 3, Skipped: 83
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for JanusGraph: Distributed Graph Database 1.2.0-SNAPSHOT:
[INFO] 
[INFO] JanusGraph: Distributed Graph Database ............. SUCCESS [ 17.109 s]
[INFO] JanusGraph-gRPC: gRPC Components for JanusGraph .... SUCCESS [  6.101 s]
[INFO] JanusGraph-Driver: Gremlin-Driver Library for JanusGraph SUCCESS [ 19.645 s]
[INFO] JanusGraph-Core: Core Library for JanusGraph ....... SUCCESS [ 28.363 s]
[INFO] JanusGraph-Backend-testutils: Collection of Backend tests SUCCESS [  8.210 s]
[INFO] JanusGraph-InMemory: InMemory Backend for JanusGraph FAILURE [04:01 min]
[INFO] JanusGraph-Server: Server Components for JanusGraph  SKIPPED
[INFO] JanusGraph-Test: Test Suite for JanusGraph ......... SKIPPED
[INFO] JanusGraph-BerkeleyJE: Distributed Graph Database .. SKIPPED

relevant stack trace of one of the tests:

[ERROR] Tests run: 204, Failures: 0, Errors: 1, Skipped: 41, Time elapsed: 53.53 s <<< FAILURE! -- in org.janusgraph.graphdb.inmemory.InMemoryGraphTest
[ERROR] org.janusgraph.graphdb.inmemory.InMemoryGraphTest.testWriteAndReadWithJanusGraphIoRegistryWithGryo(Path) -- Time elapsed: 0.209 s <<< ERROR!
java.lang.IllegalArgumentException: Unable to create serializer "org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer" for class: java.util.concurrent.atomic.AtomicLong
	at org.apache.tinkerpop.shaded.kryo.factories.ReflectionSerializerFactory.makeSerializer(ReflectionSerializerFactory.java:67)
	at org.apache.tinkerpop.shaded.kryo.factories.ReflectionSerializerFactory.makeSerializer(ReflectionSerializerFactory.java:45)
	at org.apache.tinkerpop.shaded.kryo.Kryo.newDefaultSerializer(Kryo.java:380)
	at org.apache.tinkerpop.shaded.kryo.Kryo.getDefaultSerializer(Kryo.java:364)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoTypeReg.registerWith(GryoTypeReg.java:122)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoMapper.createMapper(GryoMapper.java:101)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoMapper.createMapper(GryoMapper.java:75)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoWriter.<init>(GryoWriter.java:52)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoWriter.<init>(GryoWriter.java:48)
	at org.apache.tinkerpop.gremlin.structure.io.gryo.GryoWriter$Builder.create(GryoWriter.java:183)
	at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.IoStep.constructWriter(IoStep.java:190)
	at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.IoStep.write(IoStep.java:121)
	at org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect.IoStep.processNextStart(IoStep.java:112)
	at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:155)
	at org.apache.tinkerpop.gremlin.process.traversal.step.util.ExpandableStepIterator.next(ExpandableStepIterator.java:55)
	at org.apache.tinkerpop.gremlin.process.traversal.step.filter.FilterStep.processNextStart(FilterStep.java:40)
	at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.next(AbstractStep.java:140)
	at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.next(AbstractStep.java:40)
	at org.apache.tinkerpop.gremlin.process.traversal.Traversal.iterate(Traversal.java:210)
	at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal.iterate(GraphTraversal.java:4005)
	at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal$Admin.iterate(GraphTraversal.java:241)
	at org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.DefaultGraphTraversal.iterate(DefaultGraphTraversal.java:48)
	at org.janusgraph.graphdb.JanusGraphTest.testWritingAndReading(JanusGraphTest.java:8679)
	at org.janusgraph.graphdb.JanusGraphTest.testWriteAndReadWithJanusGraphIoRegistryWithGryo(JanusGraphTest.java:8664)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
	at org.apache.tinkerpop.shaded.kryo.factories.ReflectionSerializerFactory.makeSerializer(ReflectionSerializerFactory.java:54)
	... 26 more
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private volatile long java.util.concurrent.atomic.AtomicLong.value accessible: module java.base does not "opens java.util.concurrent.atomic" to unnamed module @25d250c6
	at java.base/java.lang.reflect.AccessibleObject.throwInaccessibleObjectException(AccessibleObject.java:391)
	at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:367)
	at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:315)
	at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:183)
	at java.base/java.lang.reflect.Field.setAccessible(Field.java:177)
	at org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer.buildValidFields(FieldSerializer.java:306)
	at org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer.rebuildCachedFields(FieldSerializer.java:239)
	at org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer.rebuildCachedFields(FieldSerializer.java:182)
	at org.apache.tinkerpop.shaded.kryo.serializers.FieldSerializer.<init>(FieldSerializer.java:155)
	... 29 more

This is on openjdk 21.0.10 2026-01-20.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions