[Bugfix][Diffusion] Drop aborted request's orphaned async output (fix #6413) (#6439)

Signed-off-by: summer <128961079+zhang-keliang@users.noreply.github.com>
Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
summerandmultica-agent authored and GitHub committed 2026-09-23 16:58:46 +00:00
1 parent 1934d121e2
commit 7f867fb782
9 files changed
+969 -25

No files matched your search

+5
View File
@@ -1609,6 +1609,11 @@ class DiffusionEngine:
raise RuntimeError(f"Diffusion scheduler lost state for request {request_id}.")
if state.status == DiffusionRequestStatus.FINISHED_ABORTED:
# An aborted request is never waited on, so a pending async output
# would be cached forever by the executor result pump (issue #6413).
# Tell the executor to drop it before returning the aborted result.
if runner_output is not None and runner_output.async_output_id is not None:
self.executor.drop_output(runner_output.async_output_id)
# Preserve runner-provided abort details when available.
if runner_output is not None and runner_output.result is not None and runner_output.result.aborted:
return runner_output.result