[Bug]JDK: 17 (Corretto 17) Gremlin job tests fail due to Groovy 2.5.14 (Unsupported class file major version 61)
- Dominant language
- Java
- Stars
- 3.2k
- Forks
- 636
- Avg merge
- 3d 11h
- Merged PRs (30d)
- 14
Description
### Bug Type (问题类型)
others (please edit later)
### Before submit
- [x] 我已经确认现有的 [Issues](https://github.com/apache/hugegraph/issues) 与 [FAQ](https://hugegraph.apache.org/docs/guides/faq/) 中没有相同 / 重复问题 (I have confirmed and searched that there are no similar problems in the historical issue and documents)
### Environment (环境信息)
- HugeGraph Version: master (latest commit)
- Build Mode: mvn clean test
- JDK: 17 (Corretto 17)
- OS: macOS
- Backend: In-memory (test execution)
Note:
All tests pass when running under Java 11.
Failures occur only under Java 17.
### Expected & Actual behavior (期望与实际表现)
Expected Behavior:
All core tests should pass when running under Java 17.
Actual Behavior:
Gremlin job-related tests fail with task status FAILED instead of SUCCESS or CANCELLING.
Failing tests:
- TaskCoreTest.testGremlinJob
- TaskCoreTest.testGremlinJobAndCancel
- TaskCoreTest.testGremlinJobAndRestore
- TaskCoreTest.testGremlinJobWithScript
- TaskCoreTest.testGremlinJobWithSerializedResults
Exception:
javax.script.ScriptException:
java.util.concurrent.ExecutionException:
BUG! exception in phase 'semantic analysis' in source unit 'Script1.groovy'
Unsupported class file major version 61
Major version 61 corresponds to Java 17 bytecode.
Dependency Analysis:
org.apache.tinkerpop:gremlin-groovy:3.5.1
org.codehaus.groovy:groovy:2.5.14
Groovy 2.5.x does not fully support Java 17 bytecode analysis.
## Context:
Related discussion / issues / pr:
- https://github.com/apache/incubator-hugegraph/discussions/2723
- https://github.com/apache/incubator-hugegraph/pull/2884
Related roadmap item:
https://issues.apache.org/jira/browse/GSOC-317
### Vertex/Edge example (问题点 / 边数据举例)
```javascript
Not applicable.
This issue is related to build/runtime incompatibility between Java 17 and Groovy 2.5.14.
It does not involve specific vertex/edge data, REST queries, or schema definitions.
```
### Schema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)
```javascript
Not applicable.
This issue is related to build/runtime incompatibility between Java 17 and Groovy 2.5.14.
It does not involve specific vertex/edge data, REST queries, or schema definitions.
```
Contributor guide
Research direction
Start by running the five listed TaskCoreTest Gremlin-job tests under Java 17 and Java 11 to reproduce the difference. Then inspect the gremlin-groovy 3.5.1 and Groovy 2.5.14 dependency path, along with open PR 2955 and the linked discussion. Done means those tests reach their expected SUCCESS or CANCELLING statuses on Java 17.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- groovy, java
- Domain
- databases, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100