damccorm opened a new pull request, #38948:
URL: https://github.com/apache/beam/pull/38948

   This PR improves the error messages thrown by the BigQuery Storage Write API 
(both sharded and unsharded paths) when retries are exhausted or when 
persistent errors are encountered.
   
   ### Changes
   * **Surface Root Cause**: The `RuntimeException` thrown when `AppendRows` 
retries are exhausted now includes the last encountered error (root cause) in 
the exception message and propagates it as the cause of the `RuntimeException`.
   * **Elevate Logging Level**: Elevated the final failure logging to `ERROR` 
level before throwing the exception, ensuring it is visible even if the log 
level is set to `ERROR`.
   * **Actionable Advice**: Added actionable advice to the error message if the 
error is `PERMISSION_DENIED` or `NOT_FOUND`, suggesting the user check if the 
destination table exists and if the service account has the necessary 
`TABLES_UPDATE_DATA` permission.
   * **Testing**: Added a new parameterized unit test 
`testStorageApiWriteFailureExhaustedRetries` to `BigQueryIOWriteTest.java` that 
simulates `AppendRows` failures (using new mock capabilities added to 
`FakeDatasetService`) and verifies the improved error messages.
   
   These changes should significantly reduce troubleshooting time for users 
encountering write failures with the Storage Write API.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to