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]

Reply via email to