Skip to content
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

[Feature Request]: Add InsertRetryPolicy for non-successful BigQuery insertAll responses. #34154

Open
2 of 17 tasks
baeminbo opened this issue Mar 4, 2025 · 0 comments
Open
2 of 17 tasks

Comments

@baeminbo
Copy link
Contributor

baeminbo commented Mar 4, 2025

What would you like to happen?

BigQueryIO's InsertRetryPolicy only applies to per-element errors within 200 OK responses. Non-200 responses (e.g., 400 Bad Request) are not handled by the policy and cause indefinite retries in Dataflow streaming jobs, even with InsertRetryPolicy.neverRetry(). #34118 was filed to clarify this behavior in Javadoc.

However, I believe we can extend the InsertRetryPoilcy to handle non-successful responses easily. To address this, InsertRetryPolicy's Context, which currently only contains per-element error information, would need to be extended to include an exception. The elements that fail with non-a successful response should then be routed to Dead Letter Queue (DLQ) within BigQueryServicesImpl#insertAll

Issue Priority

Priority: 2 (default / most feature requests should be filed as P2)

Issue Components

  • Component: Python SDK
  • Component: Java SDK
  • Component: Go SDK
  • Component: Typescript SDK
  • Component: IO connector
  • Component: Beam YAML
  • Component: Beam examples
  • Component: Beam playground
  • Component: Beam katas
  • Component: Website
  • Component: Infrastructure
  • Component: Spark Runner
  • Component: Flink Runner
  • Component: Samza Runner
  • Component: Twister2 Runner
  • Component: Hazelcast Jet Runner
  • Component: Google Cloud Dataflow Runner
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant