alamb opened a new pull request, #839:
URL: https://github.com/apache/arrow-rs-object-store/pull/839

   # Which issue does this PR close?
   
   N/A -- documentation only
   
   # Rationale for this change
   
   While discussing https://github.com/apache/arrow-rs-object-store/pull/817 it 
became clear the docs don't make it obvious that `put` / `put_opts` require the 
entire payload to be buffered in memory, and that the multipart API 
(`put_multipart`, `WriteMultipart`, `BufWriter`) is the intended way to upload 
large objects with bounded memory use.
   
   # What changes are included in this PR?
   
   Documentation hints (no code changes) at the places users are likely to land 
when looking for how to upload data:
   
   - Crate-level `Put Object` section: note the payload is buffered in memory, 
with a link to the `Multipart Upload` section
   - Crate-level `Multipart Upload` section: mention it avoids buffering the 
entire object, and link `WriteMultipart` and `BufWriter`
   - `ObjectStore::put_opts` and `ObjectStoreExt::put`: note the buffering 
behavior and link to the multipart alternatives
   - `PutPayload`: note it is fully materialized in memory and link to the 
multipart API
   
   All links use intra-doc `[\`ClassName\`]` style. Verified with 
`RUSTDOCFLAGS="-Dwarnings" cargo doc --document-private-items --no-deps 
--all-features` (same as CI).
   
   # Are there any user-facing changes?
   
   Documentation only.


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