XiaoHongbo-Hope opened a new pull request, #1028:
URL: https://github.com/apache/paimon-rust/pull/1028

   ### Purpose
   
   Add an optional, read-only OSS FileIO backend using Alibaba Cloud OSS C++ 
SDK v2. Select it with `fs.oss.impl=cpp`; OpenDAL remains the default.
   
   ### Changes
   
   - Add `storage-oss-cpp` (also in `storage-all`) and a separately built, 
versioned C ABI bridge. No SDK download or linking in normal Cargo builds.
   - Support HEAD, exact Range GET and paginated LIST. Reuse clients per 
bucket/FileIO; retain the existing REST credential-refresh and cache layers.
   - Bound blocking SDK requests (default 8), including after async 
cancellation. Reject reuse after fork and unsupported mutations.
   - Validate range status, offsets and body length; keep retries in the SDK 
and contain C++ exceptions. Do not expose signed requests or credentials in 
errors.
   - Add local HTTP integration tests, a pinned SDK CI job, and concise 
build/configuration documentation.
   
   ### Tests
   
   - Built the bridge against SDK 0.2.0, commit 
`c13a82038b0696f99c32f4e86b623ffcc9e62140`.
   - 5 backend tests passed, including 2 tests with the real SDK and a local 
HTTP fixture: partial-body retry, incorrect/short ranges, pagination, errors, 
credential replacement, concurrency and cancellation.
   - Existing I/O tests: 148 passed; RESTTokenFileIO tests: 4 passed.
   - `cargo fmt --all -- --check`, Clippy with `-D warnings`, and `git diff 
--check`.
   
   ### Scope
   
   Experimental read path only; no format or query API changes. The external 
bridge/SDK must be installed separately. This does not switch Python-side Blob 
downloads. No production OSS, throughput or long-tail improvement is claimed by 
these functional tests.
   


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

Reply via email to