zuul/zuul/manager
Simon Westphahl 381ba7c24f
Ensure cycle dependencies are enqueued ahead
This change fixes a bug related to circular dependency resolution where
non-cycle changes could be enqueued between changes of the same cycle.

This violated the invariant assumption that changes of the same
dependency cycle are enqueued in sequence. This could cause the pipeline
processor to loop indefinitely under certain conditions.

The idea behind this fix is to treat all unprocessed dependencies of
other changes in the same cycle as if they were direct dependencies of
the current change. By that we will try to enqueue dependencies of any
change in the cycle ahead of the whole cycle.

Change-Id: I3eeb9fc9f6fca73982ce01d180dca9f58868bff3
2023-05-23 09:14:16 +02:00
..
__init__.py Ensure cycle dependencies are enqueued ahead 2023-05-23 09:14:16 +02:00
dependent.py Ensure cycle dependencies are enqueued ahead 2023-05-23 09:14:16 +02:00
independent.py Ensure cycle dependencies are enqueued ahead 2023-05-23 09:14:16 +02:00
serial.py zuul-web: add pipelines' manager, triggers data in status 2021-10-27 15:13:01 +02:00
shared.py Remove deprecated pipeline queue configuration 2022-09-08 13:32:11 -07:00
supercedent.py Fix mutation while iterating over queues 2021-12-01 16:28:08 -08:00