From d7a2131b34e567669135f41934b25ac10938553f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dean=20Qui=C3=B1anola?= Date: Tue, 10 Dec 2024 13:48:17 -0800 Subject: [PATCH] fix: streamed errors were previously swallowed (#384) This created false-positive completed tasks --- runpod/serverless/modules/rp_job.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/runpod/serverless/modules/rp_job.py b/runpod/serverless/modules/rp_job.py index 22f377c2..f7f8feba 100644 --- a/runpod/serverless/modules/rp_job.py +++ b/runpod/serverless/modules/rp_job.py @@ -126,9 +126,15 @@ async def handle_job(session: ClientSession, config: Dict[str, Any], job) -> dic job_result = {"output": []} async for stream_output in generator_output: log.debug(f"Stream output: {stream_output}", job["id"]) - if "error" in stream_output: + + if type(stream_output.get("output")) == dict: + if stream_output["output"].get("error"): + stream_output = {"error": str(stream_output["output"]["error"])} + + if stream_output.get("error"): job_result = stream_output break + if config.get("return_aggregate_stream", False): job_result["output"].append(stream_output["output"])