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

   ### Describe the issue this Pull Request addresses
   
   This PR adds support for hierarchical date partitioning, allowing users to 
store date partition values in yyyy/MM/dd directory structure while specifying 
them as yyyy-mm-dd format. This provides a more intuitive folder hierarchy for 
date-based partitions.
   
   ### Summary and Changelog
   
   Users can now enable hierarchical date partitioning to automatically convert 
date values from `yyyy-mm-dd` format to `yyyy/MM/dd` directory structure.
   
     **Changes:**
     - Added `HIERARCHICAL_DATE_PARTITIONING` config property to enable date 
path transformation
     - Updated key generators (`SimpleAvroKeyGenerator`, `BuiltinKeyGenerator`) 
to support hierarchical date formatting
     - Modified partition path formatters to handle date hierarchy conversion
     - Updated partition path parsing logic to reverse the transformation when 
reading
     - Added validation to prevent conflicting configuration with hive-style 
partitioning
     - Added test coverage in `TestSlashSeparatedPartitionValue.scala`
   
   ### Impact
   
    **Public API Changes:**
     - New config: `hoodie.datasource.write.hierarchial.date.partitionpath` 
(default: `false`)
     - New table config property in 
`HoodieTableConfig.HIERARCHICAL_DATE_PARTITIONING`
   
    **User-facing Changes:**
     - Users can enable hierarchical date partitioning via the new config 
property
     - Partition directories will be created as nested folders (e.g., 
`2026/01/05` instead of `2026-01-05`)
     - Cannot be used together with hive-style partitioning
   
   ### Risk Level
   
   **Low** - Feature is opt-in via configuration flag. Existing tables are 
unaffected unless explicitly enabled. Added validation to prevent 
misconfiguration with hive-style partitioning.
   
   ### Documentation Update
   
   Config documentation needs to be updated to include:
     - `hoodie.datasource.write.hierarchial.date.partitionpath` configuration 
property
     - Usage examples showing date partition transformation
     - Note about incompatibility with hive-style partitioning
   
   ### Contributor's checklist
   
   - [ ] Read through [contributor's 
guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [ ] Enough context is provided in the sections above
   - [ ] 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