apache / apache/hudi

DELETE operation does not route preCombine/ordering field values to the delete records

Open
#16,447 1 comment 0 reactions 1 assignee Assigned to @linliu-code View on GitHub
engine:spark from-jira priority:high type:bug
Dominant language
Java
Stars
6.2k
Forks
2.5k
Avg merge
2d 8h
Merged PRs (30d)
111

Description

org.apache.hudi.client.BaseHoodieWriteClient#delete is defined as:
{code:java}
/**
* Deletes a list of {@link HoodieKey}s from the Hoodie table, at the supplied instantTime {@link HoodieKey}s will be
* de-duped and non-existent keys will be removed before deleting.
*
* @param keys {@link List} of {@link HoodieKey}s to be deleted
* @param instantTime Commit time handle
* @return Collection of WriteStatus to inspect errors and counts
*/
public abstract O delete(K keys, final String instantTime); {code}
It does not take in precombine, only the keys. Therefore, when we write to the log block, the precombine is not saved. This api will need to be modified, as well as org.apache.hudi.table.HoodieTable#delete,
org.apache.hudi.table.action.deltacommit.SparkDeleteDeltaCommitActionExecutor#SparkDeleteDeltaCommitActionExecutor

Also take a look at delete prepped, and see if that needs to be modified as well

## JIRA info

- Link: https://issues.apache.org/jira/browse/HUDI-7611
- Type: Bug
- Fix version(s):
- 1.1.0

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.