kbuci opened a new pull request, #18307:
URL: https://github.com/apache/hudi/pull/18307

   ### Describe the issue this Pull Request addresses
   
   During hive sync, the Hudi writer version is not published to the Hive 
Metastore (HMS) table properties. This makes it difficult for downstream 
consumers and platform tooling to determine which version of the Hudi writer 
library produced the data for a given table.
   
   Publishing this version info allows users to infer which HUDI jar versions 
to use when writing to the dataset. This is helpful for cases when a user is 
performing a rolling HUDI verison upgrade of all their datasets, and has a 
table service platform for invoking table services (that needs to infer which 
HUDI jar to use before running a table service against a dataset)
   
   ### Summary and Changelog
   
   Publish the Hudi writer version as a table property (`hudi_writer_version`) 
in HMS during hive sync.
   
   - Add `updateHoodieWriterVersion(String tableName)` default method to 
`HoodieMetaSyncOperations` interface
   - Implement `updateHoodieWriterVersion` in `HoodieHiveSyncClient`, which 
reads the current Hudi version via `HoodieVersion.get()` and sets it as a table 
parameter in HMS
   - Call `updateHoodieWriterVersion` in `HiveSyncTool.syncHoodieTable` after 
updating the last commit time synced
   - Update unit test assertions in `TestHiveSyncTool` to validate the new 
table property is present
   
   ### Impact
   
   A new table property `hudi_writer_version` will be set on HMS tables during 
every hive sync. This is a metadata-only change with no impact on the storage 
format or read/write path. Existing tables will get the property populated on 
their next sync.
   
   ### Risk Level
   
   low — The change only adds a single HMS `alter_table` call per sync to set a 
table-level property. No existing behavior is modified. If the call fails, it 
throws a clear exception consistent with existing error handling in the sync 
client.
   
   ### Documentation Update
   
   none
   
   ### Contributor's checklist
   
   - [x] Read through [contributor's 
guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [x] Enough context is provided in the sections above
   - [x] Adequate tests were added if applicable
   


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

Reply via email to