• S
    [FIXED JENKINS-28926] Block while upstream/downstream building cycles never complete · de877367
    Stephen Connolly 提交于
    - One could argue that without this change the system is functioning correctly and that previous behaviour
      was a bug. On the other hand, people have come to rely on the previous behaviour.
    - The issue really centeres around state changes in the blocked tasks. Since blocking on upstream/downstream
      relies on checking the building projects and the queued (excluding blocked) tasks we need any change in
      the blocked task list to be visible immediately (i.e. update the snapshot)
    - I was able to reliably reproduce this behaviour with a convoluted set of manually configured projects
      but turning this into a test case has not proved quite as easy. Manual testing confirms that the issue is
      fixed for my manual test case
    - I have also added a sorting of the blocked list when probing for tasks to unblock. This should prioritise
      tasks as intended by the QueueSorter
    de877367
Queue.java 95.8 KB