Skip to content

BQ Write: Share stream closing errors across pending writes. #7005

Description

@dbolduc

While gax::Error is not Clone and our retry policies accept them by value... tonic::Status is Clone.

So we can easily construct a gax::Error from it and pass that along to the N callers.

This gives us the best of both worlds:

  • reuse familiar retry policies
  • no synthetic, transient errors after a stream fails with a permanent error.

https://github.com/googleapis/google-cloud-rust/pull/6994/changes#r4108025829

Although, now I need to think... what if we are multiplexing, and a req to table 1 fails with PERMISSION_DENIED and then req to table 2 (which could have succeeded) get the same error. 🤔

Activity

  1. self-assigned this
    on Sep 28, 2026
  2. added theissue type on Oct 19, 2026
  3. added
    type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.
    on Oct 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

api: bigqueryIssues related to the BigQuery API.api: bigquerystorageIssues related to the BigQuery Storage API.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions