keksmd opened a new issue, #964:
URL: https://github.com/apache/incubator-graphar/issues/964
### Describe the enhancement requested
After #959 / PR #961 replaces the provisional row-oriented physical-batch
contract with
column vectors, the Parquet backend needs the corresponding adapter
migration. This issue is one
narrow downstream slice: it must not retain a compatibility `Row` facade.
Scope:
- migrate `graphar-io-api` read-contract tests and `graphar-io-parquet` from
`RecordBatch.row(int)` / `Row` to `ValueVector` and `VectorRecordBatch`;
- preserve physical projection, strict half-open row-range reads, and
required Parquet Offset Index
behavior;
- preserve safe binary/list/null value ownership at the vector boundary;
- treat `WriteMode.APPEND` explicitly: Parquet cannot atomically append to
one existing file, so the
writer must reject it rather than silently overwriting.
Non-goals: migrating GraphAr reader/writer/validator/integration consumers
(separate dependent
slices); adding Apache Arrow as a dependency; changing the Parquet decoding
algorithm; or making
Parquet append work through a hidden rewrite.
Acceptance evidence:
1. no `Row` or `.row(...)` reference remains in `io-api` / `io-parquet`;
2. focused clean verification covers vector schema position, count, null,
binary and list values;
3. canonical fixture projection/row-range tests retain applied `PROJECTION`
and `ROW_RANGE`;
4. writer still emits readable Offset Indexes with the existing bounded-page
assertion;
5. a write with `APPEND` is explicitly rejected, never treated as overwrite.
Component(s): Java
Relates to #947 and #959.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]