Skip to content

Adding feature to list dir non-recursively in trinofilesystem to support hudi metadir list in non-recursive fashion#20254

Closed
ryadav-uptycs wants to merge 3 commits intotrinodb:masterfrom
ryadav-uptycs:hudi-connector-issues-fix
Closed

Adding feature to list dir non-recursively in trinofilesystem to support hudi metadir list in non-recursive fashion#20254
ryadav-uptycs wants to merge 3 commits intotrinodb:masterfrom
ryadav-uptycs:hudi-connector-issues-fix

Conversation

@ryadav-uptycs
Copy link
Copy Markdown

Details are Captured in
#20253

Hudi connector shows incorrect table count for some of the tables where we run clustering

After digging deeper into the code we found that in newer version of trino .hudi metapath listing is done recursively (https://github.com/trinodb/trino/blob/430/plugin/trino-hudi/src/main/java/io/trino/plugin/hudi/table/HudiTableMetaClient.java#L166) which is causing to incorrect oldest timestamp file calcaution
.Since it is doing recurvely it is also reading commit files from .hoodie/.bucket_index/consistent_hashing_metadata//20231101000038468.commit which was placed to update the state of clustering . it is causing to skip some of the parquet files while listing the directory . hence incorrectly data count. This clustering commit files in hudi was done as part of this PR (apache/hudi#8503)

if we add filter after getting the listing result the query takes time in planning phase , but after adding non-recursive implementation planning is finishing quickly

For this PR adding changes for trinofilesystem only

Additional context and related issues

Release notes

( ) This is not user-visible or is docs only, and no release notes are required.
( ) Release notes are required. Please propose a release note for me.
( ) Release notes are required, with the following suggested text:

# Section
* Fix some things. ({issue}`issuenumber`)

1. exception handling in splitLoader
2. non-recursive iteration on hudi metadata dir
1. exception handling in splitLoader
2. non-recursive iteration on hudi metadata dir
1. exception handling in splitLoader
2. non-recursive iteration on hudi metadata dir
@cla-bot cla-bot bot added the cla-signed label Jan 2, 2024
@github-actions github-actions bot added tests:hive hudi Hudi connector hive Hive connector labels Jan 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed hive Hive connector hudi Hudi connector

Development

Successfully merging this pull request may close these issues.

1 participant