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

   # Which issue does this PR close?
   Closes #18.
   
   # Rationale for this change
   The file handle has several drawbacks as it does NOT specify the following 
properties:
   
   - **mode:** Is the file opened read-only or does it also have write access 
(which would be bad)?
   - **seek position:** At which position is the current file "read head"? Are 
users expected to seek to the file start if they want to read the entire file?
   - **direct IO:** Is the file opened using direct IO? (in which case the user 
would have to read in aligned blocks)
   - **exclusive access:** Does the API user have exclusive access to the said 
file handle (and hence can use seek-based operations) or not (in which case 
only non-seeking operations like 
[`read_at`](https://doc.rust-lang.org/std/os/unix/fs/trait.FileExt.html#tymethod.read_at)
 would be required)
   
   At the same time I suspect that most users copy the file data into a buffer 
anyways and don't use any kernel-based IO operations like 
[`sendfile`](https://man.archlinux.org/man/sendfile.2).
   
   All object store users and integrating libraries potentially have to deal 
with streams AND file handles.
   
   # What changes are included in this PR?
   Remove 
[`GetResultPayload::File`](https://docs.rs/object_store/latest/object_store/enum.GetResultPayload.html#variant.File)
 (and the entire enum).
   
   # Are there any user-facing changes?
   Files are no longer exposed.
   


-- 
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: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to