zuul/zuul/manager
Simon Westphahl 8eec9e3bcb Ensure correct re-enqueue on changing gate queue
When the queue for a project is changed during reconfiguration the
dependent pipeline manager was using the queue of the item
ahead in the old queue.

This lead to items ending up in the wrong queues and caused the
following exception in the run handler:

2019-11-28 13:33:47,313 zuul.Scheduler  ERROR  Exception in run handler:
Traceback (most recent call last):
  File "/tmp/zuul/zuul/scheduler.py", line 1145, in run
    while (pipeline.manager.processQueue() and
  File "/tmp/zuul/zuul/manager/__init__.py", line 914, in processQueue
    item, nnfi)
  File "/tmp/zuul/zuul/manager/__init__.py", line 898, in _processOneItem
    priority = item.getNodePriority()
  File "/tmp/zuul/zuul/model.py", line 2684, in getNodePriority
    return self.pipeline.manager.getNodePriority(self)
  File "/tmp/zuul/zuul/manager/dependent.py", line 101, in getNodePriority
    return items.index(item)
ValueError: <QueueItem 0x7f02583af4e0 for <Change 0x7f02583a9cf8 org/project2 2,1> in gate> is not in list

The issue is fixed, by ignoring the given existing queue in the
dependent pipeline manager, since it's always possible to get the
correct queue from the pipeline itself.

Change-Id: Ia5b1b58377e4420b9ab1440c0b9f67cb15967263
2019-11-28 15:04:37 +01:00
..
__init__.py Annotate further log messages in pipeline processing 2019-09-25 16:25:04 +02:00
dependent.py Ensure correct re-enqueue on changing gate queue 2019-11-28 15:04:37 +01:00
independent.py Return dependency cycle failure to user 2019-07-25 11:11:53 +02:00
supercedent.py Annotate pipeline processing with event id 2019-05-17 06:09:29 +02:00