thomaschow opened a new pull request, #14779:
URL: https://github.com/apache/iceberg/pull/14779
### Description
BigQuery runs its own optimistic concurrency control, and the BigQuery
catalog does retry these conflict cases. However the conflict case detection
seems to leave out certain message patterns when matching. I've seen errors
such as the following:
```bash
BigQueryTableOperations.java:96: Exception thrown on commit:
org.apache.iceberg.exceptions.ValidationException: Precondition Failed
{
"code": 412,
"errors": [
{
"domain": "global",
"location": "If-Match",
"locationType": "header",
"message": "Resource <table_name> did not meet condition IF_MATCH",
"reason": "conditionNotMet"
}
],
"message": "Resource <table_name> did not meet condition IF_MATCH",
"status": "FAILED_PRECONDITION"
}
```
So this PR updates the conflict handling to match more message patterns that
come from etag mismatch.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]