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

   ### Change Logs
   
   The PR apache/hudi#9936 made a breaking change in complex key generator for 
the case where there is a single record key field.  Before this breaking 
change, the key is encoded as 
`<record_key_field_name>:<record_key_field_value>` in `_hoodie_record_key` meta 
field; after the change, the key is changed to be `<record_key_field_value>`.  
This change affects 0.14.1, 0.15.0, 1.0.2 releases and user upgrading to these 
versions can hit duplicates after upserts because of the key encoding change.
   
   This PR reverts the default behavior of encoding record key to be 
`<record_key_field_name>:<record_key_field_value>`, with a config 
`hoodie.write.complex.keygen.encode.single.record.key.field.name` to turn it 
off in case the user creates a new table on the affected releases and need to 
maintain the behavior of encoding the record key as `<record_key_field_value>`, 
for complex key generator with a single record key field.
   
   New tests are added, existing tests are adjusted based on the above behavior.
   
   ### Impact
   
   Avoid breaking changes during upgrades.
   
   ### Risk level
   
   low
   guarded by config.
   
   ### Documentation Update
   
   apache/hudi#13648
   
   ### Contributor's checklist
   
   - [ ] Read through [contributor's 
guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [ ] Change Logs and Impact were stated clearly
   - [ ] Adequate tests were added if applicable
   - [ ] CI passed


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