-
Notifications
You must be signed in to change notification settings - Fork 4k
ARROW-10801: [Rust] [Flight] Support sending FlightData for Dictionaries with that of a RecordBatch #8826
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ARROW-10801: [Rust] [Flight] Support sending FlightData for Dictionaries with that of a RecordBatch #8826
Conversation
nevi-me
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great, have 1 comment that needs addressing.
dca9d09 to
78a913a
Compare
alamb
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For what it is worth, I reviewed this code and while I am not an expert in Flight so can't speak for the correctness, the structure seems clear and readable. Nice work @carols10cents !
| message.add_header_type(ipc::MessageHeader::Schema); | ||
| message.add_bodyLength(0); | ||
| message.add_header(schema); | ||
| // TODO: custom metadata |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should attach JIRAs to the TODOs so we don't lose track of them
nevi-me
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This PR contains a series of refactorings to extract code from the IPC
FileWriterandStreamWriterthat generatesEncodedDatainstances. I highly recommend reviewing commit-by-commit, I tried to make the changes fairly mechanical and easy to understand at each step.With those refactorings, it becomes easier to reuse the code with Flight too, so that when we're generating
FlightDatafor aRecordBatch, we get theFlightDatafor the batch's dictionaries too.This will help in getting the Flight integration tests that include dictionaries to pass... I'm also having some unrelated protocol problems over in this PR I'm working on but this work will help there.