Azure Pipelines新运行阻塞前序优先级1作业问题求助
Azure Pipelines 调度异常求助
近几个月遇到Azure Pipelines调度异常:当新的运行实例在前序运行的排队作业处理完成前启动时,前序运行中会有一个作业卡在队列优先级1状态,必须等新运行的所有排队作业处理完毕后才会启动。
具体表现
- 被阻塞的作业不固定,每次出现的作业可能不同;
- 在包含约17个无顺序限制作业的
.yaml管道中该问题最明显,该管道因不同PR提交频繁连续排队; - 后续运行的相同作业可能比原运行中的对应作业先完成;
- 被阻塞作业显示优先级为1,但实际调度优先级低于优先级2及以上的排队作业;
环境配置
- 涉事管道配置了4台self-hosted (VM) agents可用,我们总共拥有5台self-hosted agents授权;
问题截图说明
- 运行队列:队列中可见优先级1的作业被优先级2的作业插队;
- 含阻塞作业的原运行:原运行实例内有作业长时间处于排队状态;
- 无阻塞作业的新运行:新运行实例的所有作业均正常执行完成;
- 阻塞作业优先级:明确显示被阻塞作业的优先级为1,但未被优先调度;
简化复现场景
- 配置3台self-hosted agents,使用包含4个无依赖作业的
.yaml管道,连续触发两次运行; - 运行1启动后,3个作业开始执行,作业4进入队列(优先级1);运行2启动后,4个作业全部进入队列;
- 当前执行的作业完成时,优先级2的作业会被优先启动,优先级1的作业被持续跳过,仅当它成为队列最后一项时才会执行;
目前不确定是否能稳定复现该调度异常,特此求助。
内容的提问来源于stack exchange,提问作者user26267164
相关产品推荐
相关产品推荐

