-
Notifications
You must be signed in to change notification settings - Fork 8.1k
fix: new_predecessor_map error handle #10691
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
base: main
Are you sure you want to change the base?
fix: new_predecessor_map error handle #10691
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughA filter condition in the Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes
Pre-merge checks and finishing touchesImportant Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional. ❌ Failed checks (1 error, 1 warning, 3 inconclusive)
✅ Passed checks (2 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
BUG Description
When entering a new cycle, the whole predecessor_map values will be set to empty list.
function call: component.start() --> graph.mark_branch() --> update_run_state()
‘’‘python
new_predecessor_map = {
k: [dep for dep in v if dep in self.cycle_vertices and dep in self.run_manager.ran_at_least_once]
for k, v in new_predecessor_map.items()
}
‘’‘
At the point, self.run_manager.ran_at_least_once list is almost empty so that new_predecessor_map will also be values-empty.
This is a BIG bug, during my cycle, the execution order of each node is chaotic, and even some nodes are executed twice.
Fix
remove 'dep in self.run_manager.ran_at_least_once' since every node in the cycle should be rebuilt according to different condition.
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.