adiranjan25 opened a new pull request, #18823: URL: https://github.com/apache/iceberg/pull/18823
## Summary Fixes #18797. JdbcLockFactory initializes the maintenance lock table using a check-then-create sequence. When multiple Flink maintenance operators initialize concurrently, both can observe a missing table and race to create it. This change handles recognized duplicate-table errors by verifying that the lock table now exists, while propagating other SQL exceptions. ## Changes - Recognize duplicate-table errors for PostgreSQL, MySQL, and the reproduced SQLite case. - Add a concurrent initialization regression test using two JdbcLockFactory instances. - Add resource cleanup and a negative database-initialization test. ## Validation - Reproduced the SQLite table-already-exists failure before the fix. - Full TestJdbcLockFactory test class: BUILD SUCCESSFUL. - Targeted concurrency regression test: BUILD SUCCESSFUL. - Spotless formatting and git diff --check passed. ## Limitations Local validation was performed with SQLite. PostgreSQL and MySQL handling has not been integration-tested. -- 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]
