impl(bigquery): add arrow API surface - #6251
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces support for the Arrow data format in the BigQuery Write client by adding an arrow method to construct an ArrowWriterBuilder. It also includes a unit test verifying error handling for Arrow writes. The review feedback suggests improving the doctest example by replacing the hidden # panic!() with an idiomatic todo!() placeholder, making the sample code cleaner and more copy-paste friendly for users.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #6251 +/- ##
=======================================
Coverage 96.07% 96.07%
=======================================
Files 275 275
Lines 68829 68846 +17
=======================================
+ Hits 66126 66146 +20
+ Misses 2703 2700 -3 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
| /// # async fn sample(client: Write) -> anyhow::Result<()> { | ||
| /// let writer = client | ||
| /// .arrow(schema()) | ||
| /// .default("projects/p/datasets/d/tables/t")?; |
There was a problem hiding this comment.
nit: add a more meaningful resource name ? projects/my-project-id/datasets/my-dataset/tables/my-table
Adds a hook to the client to create an arrow writer. This finally rounds out the most basic of API surfaces and attaches it to the implementation.
The code is now usable. We can also start writing examples for these public APIs. (I'll track that work in #6224)
I have an integration test written, but I need to clean it up. I will send it in a follow up PR.
Towards #5664. (I need to clean up some of the modules)