From b18442ded4b71b246e78fdfca3755f7a0e94bbc7 Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Wed, 10 Apr 2024 13:36:29 +1000 Subject: [PATCH] fix(queue): poll queue on finished queue item When a queue item is finished (completed, canceled, failed), immediately poll the queue for the next queue item. Closes #6189 --- .../services/session_processor/session_processor_default.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/invokeai/app/services/session_processor/session_processor_default.py b/invokeai/app/services/session_processor/session_processor_default.py index e7caabdf90..61270e0879 100644 --- a/invokeai/app/services/session_processor/session_processor_default.py +++ b/invokeai/app/services/session_processor/session_processor_default.py @@ -86,6 +86,12 @@ class DefaultSessionProcessor(SessionProcessorBase): self._poll_now() elif event_name == "batch_enqueued": self._poll_now() + elif event_name == "queue_item_status_changed" and event[1]["data"]["queue_item"]["status"] in [ + "completed", + "failed", + "canceled", + ]: + self._poll_now() def resume(self) -> SessionProcessorStatus: if not self._resume_event.is_set():