You've encountered a common challenge with Prefect's work queue priority system. Here's a concise breakdown of how it works and what you can do:
1.
Priority System: Prefect's priority system determines the order of flow run submissions, not the execution order. This means that flows from higher-priority queues are submitted for execution first, but actual execution depends on the availability of resources and concurrency settings.
2.
Concurrency Limits: If all flows can execute simultaneously without hitting concurrency limits, the priority system won't affect execution order. However, if there are constraints, priority determines which queue's flows are executed first.
3.
Ensuring Execution Order: To ensure that flows in the 'high' priority queue execute first, you might need to adjust concurrency settings or manage the timing of flow submissions to align with resource availability.
For more details, you can refer to the
Prefect documentation on work pools and priorities.
If you have further questions or need a more specific solution, feel free to ask!