-
Notifications
You must be signed in to change notification settings - Fork 94
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
Fix spawning of absolute-triggered tasks. #5008
Conversation
Explanation: Consider a task
In principle, On current master, we spawn On this branch, we autospawn all This is simpler, and it works in all cases. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was able to reproduce:
(flow) sutherlander@graphic-vbox:~$ cylc cat-log parentless | grep WARNING
2022-07-25T15:00:07+12:00 WARNING - Backward compatibility mode ON
2022-07-25T15:00:14+12:00 WARNING - Task 3/foo already spawned in {1}
2022-07-25T15:00:14+12:00 WARNING - Task 5/foo already spawned in {1}
2022-07-25T15:00:14+12:00 WARNING - Task 5/foo already spawned in {1}
2022-07-25T15:00:57+12:00 WARNING - Task 23/foo already spawned in {1}
Fixed after this change:
(flow) sutherlander@graphic-vbox:~$ cylc cat-log parentless | grep WARNING
2022-07-25T15:02:59+12:00 WARNING - Backward compatibility mode ON
Code change looks fine, & tests passing 👍
Booted @MetRonnie as reviewer because I was able to reproduce issue locally. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Read the code
- Checked out and run tests locally
- Run Local Proof of pudding tests up to cycle 50
'R1/2': 'foo[1] => pub' # 2/pub doesn't spawn at start | ||
'R1/2': 'foo[1] => pub' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add a task to this test that doesn't get spawned to the runahead limit? (That was the point of pub
originally, I think)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I'd like to spend a bit of time making these integration tests more comprehensive. As a quick fix, I just adapted the existing test to what's actually going on in the scheduler now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New issue: #5012
These changes close #5002
I've run the example out to 50 cycle points several times, with nothing strange happening
I haven't thought of a reliable way to reproduce the problem (which was more of an inefficiency + confusing warning than a balls-to-the-wall bug) in a short test. But codecov says the change is covered in a strictly technical sense at least.
Requirements check-list
CONTRIBUTING.md
and added my name as a Code Contributor.setup.cfg
andconda-environment.yml
.