[ 
https://issues.apache.org/jira/browse/HUDI-8840?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17938414#comment-17938414
 ] 

Lin Liu edited comment on HUDI-8840 at 3/26/25 3:47 AM:
--------------------------------------------------------

Delete marker for MOR has been done as a sub-task.

Delete Marker for COW is not attempted in this task since FG reader will be 
used to replace the merge logic for COW.

Therefore, we can close this ticket.


was (Author: JIRAUSER301185):
Delete marker for MOR has been done as a sub-task.

Delete Marker for COW is not attempted in this task since FG reader will be 
used to replace the merge logic for COW. (There is a ticket for that already).

Therefore, we can close this ticket.

> Support custom delete marker in EVENT_TIME_ORDERING merge mode
> --------------------------------------------------------------
>
>                 Key: HUDI-8840
>                 URL: https://issues.apache.org/jira/browse/HUDI-8840
>             Project: Apache Hudi
>          Issue Type: Sub-task
>            Reporter: Y Ethan Guo
>            Assignee: Lin Liu
>            Priority: Blocker
>              Labels: hudi-1.0.2, pull-request-available
>             Fix For: 1.0.2
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> Relevant logic of delete marker in DefaultHoodieRecordPayload
> {code:java}
> protected boolean isDeleteRecord(GenericRecord genericRecord, Properties 
> properties) {
>   final String deleteKey = properties.getProperty(DELETE_KEY);
>   if (StringUtils.isNullOrEmpty(deleteKey)) {
>     return isDeleteRecord(genericRecord);
>   }
>   
> ValidationUtils.checkArgument(!StringUtils.isNullOrEmpty(properties.getProperty(DELETE_MARKER)),
>       () -> DELETE_MARKER + " should be configured with " + DELETE_KEY);
>   // Modify to be compatible with new version Avro.
>   // The new version Avro throws for GenericRecord.get if the field name
>   // does not exist in the schema.
>   if (genericRecord.getSchema().getField(deleteKey) == null) {
>     return false;
>   }
>   Object deleteMarker = genericRecord.get(deleteKey);
>   return deleteMarker != null && 
> properties.getProperty(DELETE_MARKER).equals(deleteMarker.toString());
> } {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to