keksmd opened a new issue, #965:
URL: https://github.com/apache/incubator-graphar/issues/965

   ### Describe the enhancement requested
   
   Add an optional `graphar-storage-s3` adapter for the dependency-light 
storage API merged in #958 and #960. It must make GraphAr physical readers and 
writers able to access `s3://` objects without adding AWS dependencies to 
metadata or the storage API.
   
   Component(s): Java
   
   ## Scope
   
   - Add an optional module depending on `graphar-storage-api` and AWS SDK v2 
S3 only.
   - Implement validated `s3://bucket/key` URI handling, `HEAD` 
existence/length, independent seekable inputs, byte-range `GET` reads, and 
staged local output with conditional create versus overwrite.
   - Keep caller ownership of the injected `S3Client`; no global client 
lifecycle.
   - Add credential-free unit coverage with an in-process S3-compatible HTTP 
endpoint for range, position, EOF, URI validation, and create semantics.
   
   ## Non-goals
   
   No GraphAr layout reader/writer, Parquet integration, Iceberg, Hadoop/S3A, 
Arrow, or mandatory cloud credentials. A real MinIO transport test follows as a 
separately reviewable opt-in test slice.
   
   ## Compatibility and acceptance
   
   The adapter remains Java 11 compatible and optional. Reads must use 
inclusive S3 Range requests while preserving the `SeekableInput` contract; a 
fresh open owns an independent position. `create()` must not overwrite an 
existing object and `createOrOverwrite()` may replace it. Focused Maven 
verification and pre-commit must pass.
   
   ## Links
   
   Relates to storage umbrella #953 and reader/writer umbrella #947. This is 
deliberately independent of PR #961, which changes the physical batch 
representation.


-- 
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]

Reply via email to