You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Considering tasks A and B, where task B is contingent upon the completion of task A, and this dependency is established within the operational period of the current month. It is known that task B initiated its first successful run on the 28th day and task A is configured to be scheduled 2 minutes subsequent to B's scheduling time. The present scenario involves an evaluation logic that has segmented the month into a period ranging from April 1st to April 30th. Upon assessing April 1st – a date for which no instance of task B exists – the logic promptly returns a 'waiting' status without proceeding to evaluate the remaining days of the month.
What you expected to happen
Given that the dependency timeframe is set for the current month, and there indeed exists a successful execution instance of task B within this month, the expected outcome of the dependency check should logically yield a 'success' status. This, in turn, would permit task A to proceed with its scheduled execution.
How to reproduce
Task A schedule is [0 30 10 28 4 ? *]
TaskB schedule is [0 32 10 28 4 ? *]
Task B relies on Task A, with the dependency anchored within the business cycle of the current month.
I think the logic behind the dependent node design should be that for it to be considered successful, every time slice needs successful results. For periods like this month or this week, it means starting from the first day right up to today, there has to be a successful dependent task each day for it to count as a success. If even one day is missing a task run, or the tasks on that day weren't successful, then the whole task is marked as a failure. It will be checked again during the next scheduled run. The product team should probably think that if a day was missed, someone needs to manually run the tasks for that day to make up for it. Otherwise, they might just 'force success'.
Search before asking
What happened
org.apache.dolphinscheduler.server.master.utils.DependentExecute#findLastProcessInterval
Considering tasks A and B, where task B is contingent upon the completion of task A, and this dependency is established within the operational period of the current month. It is known that task B initiated its first successful run on the 28th day and task A is configured to be scheduled 2 minutes subsequent to B's scheduling time. The present scenario involves an evaluation logic that has segmented the month into a period ranging from April 1st to April 30th. Upon assessing April 1st – a date for which no instance of task B exists – the logic promptly returns a 'waiting' status without proceeding to evaluate the remaining days of the month.
What you expected to happen
Given that the dependency timeframe is set for the current month, and there indeed exists a successful execution instance of task B within this month, the expected outcome of the dependency check should logically yield a 'success' status. This, in turn, would permit task A to proceed with its scheduled execution.
How to reproduce
Anything else
No response
Version
dev
Are you willing to submit PR?
Code of Conduct
The text was updated successfully, but these errors were encountered: