You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The non-async limitation of the ChunkReader trait will result in some problems, especially when the query execution engines are using async, tokio, specifically, it will have to use tokio::spawn_blocking to perform a parquet read.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Many of the API will definitely need also to be changed to async. Until now I have no very clear idea and plan
for moving them to the async version with backward compability.
One possible solution is to provide a totally aync API, and the non-async API wraps it via async_std::block_on.
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
https://docs.rs/parquet/6.1.0/parquet/file/reader/trait.ChunkReader.html The
ChunkReader
trait is designed to hide the details of the underlying storage, which however may use theasync
feature, rusto-s3 for example:https://durch.github.io/rust-s3/s3/bucket/struct.Bucket.html#method.get_object_range
That means every
get_read
call has to be implemented by blocking on an async function.The non-async limitation of the ChunkReader trait will result in some problems, especially when the query execution engines are using async, tokio, specifically, it will have to use
tokio::spawn_blocking
to perform a parquet read.Describe the solution you'd like
A clear and concise description of what you want to happen.
We can add
async
toChunkReader::get_read
.Many of the API will definitely need also to be changed to async. Until now I have no very clear idea and plan
for moving them to the async version with backward compability.
One possible solution is to provide a totally aync API, and the non-async API wraps it via
async_std::block_on
.Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: