Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: An infinite loop occurs in merge optimization, and the number of input files is equal to the number of output files. #2090

Closed
1 of 2 tasks
Tracked by #1847
MrDannyWu opened this issue Oct 12, 2023 · 2 comments · Fixed by #2167
Labels
type:bug Something isn't working

Comments

@MrDannyWu
Copy link

What happened?

When I used Amoro to merge the Icerberg tables, I found that one table (no longer written) input 6 files during the merge, but the output was still 6 files.

Affects Versions

master

What engines are you seeing the problem on?

Optimizer

How to reproduce

image
image

Relevant log output

No response

Anything else

No response

Are you willing to submit a PR?

  • Yes I am willing to submit a PR!

Code of Conduct

  • I agree to follow this project's Code of Conduct
@MrDannyWu MrDannyWu added the type:bug Something isn't working label Oct 12, 2023
@shidayang shidayang assigned MrDannyWu and unassigned MrDannyWu Oct 12, 2023
@wangtaohz
Copy link
Contributor

Thanks for report this issue!

I have confirmed that the issue is caused by splitting task. The splitting task uses the self-optimizing.max-task-size-bytes , and when this property is smaller than self-optimizing.target-size, the task becomes too small to merge files into the target size, resulting in repeated merging.

Using the max value of these two properties can solve this problem, the related code is here com.netease.arctic.server.optimizing.plan.AbstractPartitionPlan.BinPackingTaskSplitter#splitTasks.

@MrDannyWu
Copy link
Author

Okay, thanks a lot!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants