InvokeAI/invokeai/app
psychedelicious 50dd569411 fix(processor): race condition that could result in node errors not getting reported
I had set the cancel event at some point during troubleshooting an unrelated issue. It seemed logical that it should be set there, and didn't seem to break anything. However, this is not correct.

The cancel event should not be set in response to a queue status change event. Doing so can cause a race condition when nodes are executed very quickly.

It's possible that a previously-executed session's queue item status change event is handled after the next session starts executing. The cancel event is set and the session runner sees it aborting the session run early.

In hindsight, it doesn't make sense to set the cancel event here either. It should be set in response to user action, e.g. the user cancelled the session or cleared the queue (which implicitly cancels the current session). These events actually trigger the queue item status changed event, so if we set the cancel event here, we'd be setting it twice per cancellation.
2024-05-24 20:02:24 +10:00
..
api tidy: remove unnecessary whitespace changes 2024-05-24 20:02:24 +10:00
assets/images tweaks in response to psychedelicious review of PR 2023-07-26 15:27:04 +10:00
invocations feat(nodes): make ModelIdentifierInvocation a prototype 2024-05-19 20:14:01 +10:00
services fix(processor): race condition that could result in node errors not getting reported 2024-05-24 20:02:24 +10:00
shared tidy(nodes): move all field things to fields.py 2024-03-01 10:42:33 +11:00
util tidy(backend): clean up controlnet_utils 2024-04-25 13:20:09 +10:00
__init__.py fix: make invocation_context.py accessible to mkdocs 2024-03-01 10:42:33 +11:00
api_app.py feat(api): add InvocationOutputMap to OpenAPI schema 2024-05-15 14:09:44 +10:00
run_app.py feat: single app entrypoint with CLI arg parsing 2024-03-19 09:24:28 +11:00