apache / apache/incubator-graphar

[BUG][Java] Restore GraphAr v1 edge-layout metadata compatibility

Open
#943 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
373
Forks
93
Avg merge
7d 21h
Merged PRs (30d)
7

Description

## Describe the bug, including details regarding any error messages, version, and platform.

`graphar-info` in the under-development pure-Java SDK resolves GraphAr v1 edge counts, offsets, topology chunks, and edge-property chunks incompatibly with the C++ oracle and `testing/ldbc_sample/parquet`. In particular, it placed counts and offsets beneath an extra `adj_list/` directory and could not address the edge sub-chunk.

Component(s): Java

## Expected behavior

The Java metadata API must resolve the C++-compatible paths:

- `{edge}/{adj}/vertex_count` and `{edge}/{adj}/edge_count{vertexChunk}`;
- `{edge}/{adj}/adj_list/part{vertexChunk}/chunk{edgeChunk}`;
- `{edge}/{adj}/offset/chunk{vertexChunk}`;
- `{edge}/{adj}/{propertyGroup}/part{vertexChunk}/chunk{edgeChunk}`.

The focused fix must accept adjacency type plus both chunk indices, preserve valid prefixes without trailing slashes, test a nonzero `part2/chunk1` fixture path and the ordered source/destination layouts, and pass formatting plus the full Java devcontainer suite.

## Scope and links

No physical IO, Hadoop, Arrow, or query API is in scope. This is a subissue of the cross-language compatibility umbrella #944 and follows the architecture discussion #756.

Contributor guide

Open the contributing guide

Research direction

Start with graphar-info and compare its Java metadata path resolution against testing/ldbc_sample/parquet and the listed C++-compatible layouts. Verify a nonzero part2/chunk1 fixture and both ordered source/destination layouts, then run formatting and the full Java devcontainer suite to confirm the compatibility fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend-api-design
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
64/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.