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
When clients create scheduled pipelines from the Dalgo UI they provide their preferred time(s) of day when the jobs should run
Right now we turn those into cron expressions and send them to Prefect as part of deployment creation
We therefore can (and do) have multiple deployments on the same schedule, and usually Prefect run only run concurrently as many as there are workers available to run them
Yesterday we had an issue where Prefect attempted to start three scheduled flow-runs despite there being only two workers assigned to that queue, and the CPU spiked and one of the flow-runs crashed
This is probably a Prefect bug... or some misunderstanding on our part of how concurrency works in Prefect
A workaround solution
When a pipeline is created / edited, see if any others are scheduled for the same time. If there are, move the scheduled time of the new / being-edited pipeline up by one minute. Repeat the check until a free slot is found
This will likely be easier to do if the OrgDataFlowv1 stored hour and minute instead of the cron expression
The text was updated successfully, but these errors were encountered:
Problem statement
When clients create scheduled pipelines from the Dalgo UI they provide their preferred time(s) of day when the jobs should run
Right now we turn those into cron expressions and send them to Prefect as part of deployment creation
We therefore can (and do) have multiple deployments on the same schedule, and usually Prefect run only run concurrently as many as there are workers available to run them
Yesterday we had an issue where Prefect attempted to start three scheduled flow-runs despite there being only two workers assigned to that queue, and the CPU spiked and one of the flow-runs crashed
This is probably a Prefect bug... or some misunderstanding on our part of how concurrency works in Prefect
A workaround solution
When a pipeline is created / edited, see if any others are scheduled for the same time. If there are, move the scheduled time of the new / being-edited pipeline up by one minute. Repeat the check until a free slot is found
This will likely be easier to do if the
OrgDataFlowv1
stored hour and minute instead of the cron expressionThe text was updated successfully, but these errors were encountered: