Skip to content

feat: support limit push down in Hudi Flink Source V2#18406

Open
HuangZhenQiu wants to merge 3 commits intoapache:masterfrom
HuangZhenQiu:limit-push-down
Open

feat: support limit push down in Hudi Flink Source V2#18406
HuangZhenQiu wants to merge 3 commits intoapache:masterfrom
HuangZhenQiu:limit-push-down

Conversation

@HuangZhenQiu
Copy link
Copy Markdown
Collaborator

@HuangZhenQiu HuangZhenQiu commented Mar 27, 2026

Describe the issue this Pull Request addresses

Support limit push down for Hudi Flink Source V2

Close #18404

Summary and Changelog

  1. Add limitIterator in SplitReaderFunction
  2. Add limit in constructor of HoodieSplitReaderFunction and HoodieCdcSplitReaderFunction
  3. Add test cases and IT test for limit push down

Impact

none

Risk Level

none

Documentation Update

none

Contributor's checklist

  • Read through contributor's guide
  • Enough context is provided in the sections above
  • Adequate tests were added if applicable

@github-actions github-actions bot added the size:L PR with lines of changes in (300, 1000] label Mar 27, 2026
@hudi-bot
Copy link
Copy Markdown
Collaborator

CI report:

Bot commands @hudi-bot supports the following commands:
  • @hudi-bot run azure re-run the last Azure build

@HuangZhenQiu HuangZhenQiu requested a review from cshuo March 28, 2026 04:28
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 58.97436% with 16 lines in your changes missing coverage. Please review.
✅ Project coverage is 68.20%. Comparing base (1eb97b3) to head (fd9b458).

Files with missing lines Patch % Lines
...rce/reader/function/HoodieSplitReaderFunction.java 30.00% 7 Missing ⚠️
.../reader/function/HoodieCdcSplitReaderFunction.java 42.85% 2 Missing and 2 partials ⚠️
...e/reader/function/AbstractSplitReaderFunction.java 85.00% 3 Missing ⚠️
.../java/org/apache/hudi/table/HoodieTableSource.java 0.00% 2 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #18406      +/-   ##
============================================
- Coverage     68.21%   68.20%   -0.02%     
+ Complexity    27709    27703       -6     
============================================
  Files          2440     2441       +1     
  Lines        134249   134264      +15     
  Branches      16179    16187       +8     
============================================
- Hits          91578    91569       -9     
- Misses        35565    35589      +24     
  Partials       7106     7106              
Flag Coverage Δ
common-and-other-modules 44.32% <58.97%> (-0.01%) ⬇️
hadoop-mr-java-client 44.97% <ø> (+0.04%) ⬆️
spark-client-hadoop-common 48.31% <ø> (-0.01%) ⬇️
spark-java-tests 48.69% <ø> (-0.02%) ⬇️
spark-scala-tests 45.24% <ø> (+<0.01%) ⬆️
utilities 38.37% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
.../java/org/apache/hudi/table/HoodieTableSource.java 57.38% <0.00%> (ø)
...e/reader/function/AbstractSplitReaderFunction.java 85.00% <85.00%> (ø)
.../reader/function/HoodieCdcSplitReaderFunction.java 2.98% <42.85%> (-0.96%) ⬇️
...rce/reader/function/HoodieSplitReaderFunction.java 30.55% <30.00%> (-7.29%) ⬇️

... and 15 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L PR with lines of changes in (300, 1000]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support limit push down in the Hudi Source V2

3 participants