feat: Row readers using storage API acceleration can leverage full precision arrow values#656
Open
danieljbruce wants to merge 18 commits intomainfrom
Open
feat: Row readers using storage API acceleration can leverage full precision arrow values#656danieljbruce wants to merge 18 commits intomainfrom
danieljbruce wants to merge 18 commits intomainfrom
Conversation
This reverts commit d56c01f.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR allows users to fetch high precision timestamps for read calls with arrow readers. Previous to this PR there was no way users could
Impact
With the ArrowReaders in this code repository, now users can fetch and consume data from the server that preserves high precision timestamps on the backend.
Testing
A system test is added that proves the timestamp fetched from the server is high precision.
Additional Information
Something to be aware of is that this PR introduces an API change. For various read methods that users can call they can specify a value for the
arrowSerializationOptionsproperty of their request which will be passed onto the server. This allows users to opt into receiving high precision timestamps instead of getting them automatically because automatically opting them in could change values they are currently getting from ints to strings which is a breaking change.Support for Avro readers will be done in a separate PR.
In this PR we make the minimal amount of changes necessary to allow users to fetch high precision timestamps for arrow readers, but there may be additional changes that could make it easier for users to write code to fetch high precision timestamps instead of the current system test we have. That should be deliberated in a separate PR though. For instance, we can expand the
GetRowsOptionsinterface.