apache / apache/incubator-graphar
[FEATURE][Java] Cross-language compatibility test suite
- Dominant language
- C++
- Stars
- 373
- Forks
- 93
- Avg merge
- 7d 21h
- Merged PRs (30d)
- 7
Description
## Describe the enhancement requested
Establish the pure-Java GraphAr compatibility/TCK umbrella before physical IO. The suite must use C++ and canonical GraphAr metadata as the semantic oracle, while keeping `graphar-info` dependency-light.
Component(s): Java
## Scope
- metadata load/save parity across GraphAr file types, graph labels, `extra_info`, primary-key nullability, and parameterized `list` logical types;
- fixture-backed C++ -> Java -> C++ and Java -> C++ -> Java metadata acceptance where the reference toolchain is available;
- focused subissues and small PRs for independently reviewable metadata gaps, beginning with #943.
## Non-goals
No Java payload reader/writer, storage backend, Hadoop/S3, Arrow public API, or query engine.
## Acceptance
The suite records exact fixture and semantic expectations, metadata survives the supported round trips, unsupported metadata fails before IO, and the complete Java devcontainer suite passes.
## Links
Architecture umbrella: #756. Reader/writer implementation umbrella: #947. C++ devcontainer failure, when it affects the external oracle: #945.
Contributor guide
Research direction
Start with focused metadata gaps in #943 and review the Java devcontainer suite, using the C++ toolchain and canonical GraphAr metadata as the stated semantic oracle. Map the independently reviewable compatibility cases from the scope, then verify exact fixture and semantic expectations, supported metadata round trips, early rejection before IO, and a passing complete Java devcontainer suite.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, java
- Domain
- data-engineering, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100