fixed schdule drift (happy path)#7047
Conversation
mitchelsellers
left a comment
There was a problem hiding this comment.
I need to track the inner workings of this a bit more before I can leave a solid review/approval on this, however, I do not believe that this solution is going to be proper, there is a different handling with the CatchUpEnabled flag, and this change essentially removes that difference so I need to walk through what the ramifications are for this.
|
@mitchelsellers CatchUpEnabled flag logic was originally based on NextStart for s/m/h/d TimeLapseMeasurement, but later commits switched to StartDate logic. I'm just trying to fix the happy path, the CatchUpEnabled branch can be reverted. lmk |
|
Yeah it looks really odd that it isn't all done the same way |
|
@mitchelsellers here's the commit, probably copy/paste error: 6bc83a2 |
…ing the else-path fix; per dnnsoftware#7045 (comment).
… to use StartDate while keeping the else-path fix; per dnnsoftware#7045 (comment).
Fixes #7045
Summary
This change fixes scheduler cadence drift on the happy path (successful completion and manual stop completion).
Previously, the next execution time could be calculated from
StartDatein parts of the success/stop flow, which shifts future runs when a task starts late. This patch consistently advancesNextStartfrom the previously scheduledNextStartvalue so recurring tasks stay anchored to their configured cadence (for example, hourly tasks remain on the hour).Retry/error behavior is intentionally unchanged (
WorkErroredstill usesStartDate), so retry timing semantics remain the same.If you want me to address Error/Retry logic, let me know.