pvary opened a new pull request, #3888: URL: https://github.com/apache/hive/pull/3888
### What changes were proposed in this pull request? Adding the possibility to transactionally check if a Table parameter is changed before altering the table in the HMS. ### Why are the changes needed? This would provide an alternative, less error-prone and faster way to commit an Iceberg table, as the Iceberg table currently needs to: - Create an exclusive lock - Get the table metadata to check if the current snapshot is not changed - Update the table metadata - Release the lock After the change these 4 HMS calls could be substituted with a single alter table call. Also we could avoid cases where the locks are left hanging by failed processes ### Does this PR introduce _any_ user-facing change? HMS API changes: - Added `expectedParameterKey`, and `expectedParameterValue` to the `AlterTableRequest` object - Alternative option to provide `hive_metastoreConstants.EXPECTED_PARAMETER_KEY` and `hive_metastoreConstants.EXPECTED_PARAMETER_VALUE` through the `EnvironmentContext` ### How was this patch tested? Added 2 new unit tests -- 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]
