You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 192e1b1
Browse filesBrowse the repository at this point in the historyBrowse files
fix(testing): bound every smoke run with a timeout and decode output as UTF-8 (#416)
About 284 sequential Blender runs shared one 75-minute job timeout and
no per-run limit, so a single hang (Cycles, xvfb, a stuck handler) ate
the whole job, and because the status record was written only after
wait(), the summary never named the example that hung.
run_example.py now streams through a reader thread and waits with a
timeout (--timeout, default $BDT_SMOKE_TIMEOUT or 900 s). On expiry it
kills the whole process group (xvfb-run and Blender; taskkill /T on
Windows), records FAIL "timeout after Ns", and the catalog moves on. A
catalog row may set "timeout" for a legitimately slow example; the
catalog lint validates it. The weekly falsifier sweep gets the same bound.
Output is now decoded as UTF-8 with replacement. Blender writes UTF-8,
and the locale codec (cp1252 on Windows) raised UnicodeDecodeError on
bytes such as 0x9D, crashing the runner with Blender still alive.
run_catalog also deletes a row's expect_file before running it, so a
render left by an earlier local run cannot satisfy the check.
Closes#402
Refs #403
Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
0 commit comments