alamb commented on issue #7983:
URL: https://github.com/apache/arrow-rs/issues/7983#issuecomment-3164225211
Update here -- the push decoder is looking quite nice. Here is a preview of
its API:
```rust
let mut decoder = get_decoder();
loop {
match decoder.try_decode().unwrap() {
DecodeResult::NeedsData(ranges) => {
// The decoder needs more data. Fetch the data for the given ranges
// call decoder.push_ranges(ranges, data) and call again
push_data(&mut decoder, ranges);
}
DecodeResult::Data(batch) => {
// Successfully decoded the next batch of data
println!("Got batch with {} rows", batch.num_rows());
}
DecodeResult::Finished => {
// The decoder has finished decoding all data
break;
}
}
}
```
My next steps:
- [ ] Create a PR with just the Push metadata decoder
- [ ] Test that I can rewrite the sync and async readers using the push
decoder
- [ ] Make a PR for the push decoder itself.
--
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]