You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hudi.apache.org by "Raymond Xu (Jira)" <ji...@apache.org> on 2022/02/28 23:07:00 UTC

[jira] [Commented] (HUDI-3495) Reading keys in parallel from HoodieMetadataMergedLogRecordReader may lead to empty results even if key exists

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

Raymond Xu commented on HUDI-3495:
----------------------------------

For [~guoyihua] to triage

> Reading keys in parallel from HoodieMetadataMergedLogRecordReader may lead to empty results even if key exists
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: HUDI-3495
>                 URL: https://issues.apache.org/jira/browse/HUDI-3495
>             Project: Apache Hudi
>          Issue Type: Bug
>          Components: metadata
>            Reporter: Prashant Wason
>            Assignee: Ethan Guo
>            Priority: Blocker
>             Fix For: 0.11.0
>
>
> [HoodieMetadataMergedLogRecordReader|https://github.com/apache/hudi/blob/master/hudi-common/src/main/java/org/apache/hudi/metadata/HoodieMetadataMergedLogRecordReader.java] has two function which lookup keys:
> getRecordByKey(String key) - lookups the key in member variable map "records"
> getRecordsByKeys(List<String> keys) - clears member variable map "records" and scans the log files again.
> If the two functions are called in parallel, the getRecordByKey() may return an empty key because the records was cleared in another thread calling getRecordsByKeys()



--
This message was sent by Atlassian Jira
(v8.20.1#820001)