martinskeem opened a new pull request, #16644:
URL: https://github.com/apache/iceberg/pull/16644

   Some REST catalog implementations (e.g., Databricks Unity Catalog) return 
HTTP 400 with a "commit validation failed" message for concurrent-write 
conflicts instead of the spec-mandated HTTP 409. Because CommitErrorHandler 
previously mapped all 400 responses to BadRequestException, these conflicts 
escaped SnapshotProducer's retry-with-refresh loop entirely and propagated as 
fatal errors.
   
   Add a case 400 check in CommitErrorHandler that recognises the conflict 
pattern and raises CommitFailedException instead, restoring normal 
optimistic-concurrency retry behaviour for non-compliant catalogs. Responses 
that do not match the pattern still fall through to the default 400 handler and 
raise BadRequestException as before.


-- 
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]

Reply via email to