tustvold edited a comment on issue #1163: URL: https://github.com/apache/arrow-rs/issues/1163#issuecomment-1011246439
Aah yes, the `FileReader` API expects to be able to give out `RowGroupReader` which in turn give out `PageReader`. These are all owned constructs and so expect to be able to pass around `Arc<FileReader>`. However, looking at the code I'm not sure it can actually be used concurrently. It doesn't appear to have any synchronisation, and yet is using the same underlying file descriptor. I think it might be possible to make the code race if used in such a way... Some testing is needed :thinking: Edit: In fact it is impossible to use the reader in this way as the `FileReader` and friends return boxed trait objects, without Send bounds. This is how `FileSource` can get away with using a `RefCell`, the whole chain isn't `Send` and therefore cannot be sent to another thread. -- 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]
