Skip to content

impl(bigquery): add arrow API surface - #6251

Open
dbolduc wants to merge 2 commits into
googleapis:mainfrom
dbolduc:bq-arrow-writer
Open

impl(bigquery): add arrow API surface#6251
dbolduc wants to merge 2 commits into
googleapis:mainfrom
dbolduc:bq-arrow-writer

Conversation

@dbolduc

@dbolduc dbolduc commented Jul 31, 2026

Copy link
Copy Markdown
Member

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)

@product-auto-label product-auto-label Bot added the api: bigquery Issues related to the BigQuery API. label Jul 31, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread src/bigquery-write/src/client.rs
@dbolduc
dbolduc marked this pull request as ready for review July 31, 2026 21:08
@dbolduc
dbolduc requested a review from a team as a code owner July 31, 2026 21:08
@codecov

codecov Bot commented Jul 31, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.07%. Comparing base (0dac6ea) to head (29cf88b).

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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

/// # async fn sample(client: Write) -> anyhow::Result<()> {
/// let writer = client
/// .arrow(schema())
/// .default("projects/p/datasets/d/tables/t")?;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: add a more meaningful resource name ? projects/my-project-id/datasets/my-dataset/tables/my-table

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigquery Issues related to the BigQuery API.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants