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
AVRO-2014 Add support for custom streams for the DataFile interfaces. #270
AVRO-2014 Add support for custom streams for the DataFile interfaces. #270
Conversation
Downstream consumers will still have to implement their own relevant Input/Outputstream subclasses.
Rationale for this change is that we want to add avro support to apache arrow cpp and we need to easily be able to interact with non filesystem datafiles. |
cc @vimota @thiru-apache |
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, perhaps add a unit test in DataFileTests.cc that covers this new interface?
@mariusvniekerk Looks good to me. As @vimota mentioned, a unit test would be useful. Please assign the ticket to yourself in JIRA: https://issues.apache.org/jira/browse/AVRO-2014. Thank you |
@thiru-apache don't think my user on apache jira has enough power oddly |
@mariusvniekerk What is your Jira id? I'll assign the ticket to you. |
Hi. There is no examples on how to do this, so my attempt was to do this:
which compiles, but when I run it I get an error due to I noticed that you were going to make a test for this in DataFileTests.cc, but can't find any test for this OutputStream support in DataFileWriter. |
Hi - we are working to upgrade our codebase from 1.8 to 1.9, and we noticed that we also modified DataFileWriter to accept an OutputStream. However, our API takes the OutputStream by reference, instead of unique_ptr. Apart from being more consistent with, e.g., Can I suggest to at least add an alternative API to take the stream by ref, and possibly deprecate this one? I am willing to open a PR. |
Hi, thanks for your interest. Please go ahead. The current implementation uses a |
Downstream consumers will still have to implement their own relevant
Input/Outputstream subclasses.