Skip to content

reload: worker-retire lifecycle logs + document persistent-coroutine SIGSEGV (#93)#102

Merged
EdmondDantes merged 2 commits into
mainfrom
93-worker-retire-graceful-shutdown
Jul 4, 2026
Merged

reload: worker-retire lifecycle logs + document persistent-coroutine SIGSEGV (#93)#102
EdmondDantes merged 2 commits into
mainfrom
93-worker-retire-graceful-shutdown

Conversation

@EdmondDantes

Copy link
Copy Markdown
Contributor

Pairs with true-async/php-async#177 (graceful-shutdown of a retiring sync worker so HttpServer::reload() no longer deadlocks when the bootloader left a long-lived coroutine, e.g. an async DB-pool healthcheck timer).

Verified: real laravel-spawn server 10/10 reloads clean; hot-reload phpt 5/5.

…coroutine reload SIGSEGV (#93)

Pairs with the ext/async fix that graceful-shuts-down a retiring sync worker so
HttpServer::reload() no longer deadlocks when the bootloader left a long-lived
coroutine (e.g. an async DB-pool healthcheck timer).

- Log `worker shutting down (reason=reload, grace=Ns)` at retire and rename the
  bare `worker thread exited cleanly` to `worker exited`, so the journal reads
  `shutting down → exited` per worker instead of a confusing run of "exited
  cleanly" that looked like a failure.
- docs/ISSUE_reload_persistent_coroutine_segv.md — full writeup of the remaining,
  not-yet-fixed intermittent SIGSEGV during rotation (proven: a valid persistent
  coroutine first-started with a NULL run-time cache), a repro, ruled-out theories,
  a failed fix attempt, and open questions.
- Fix a -Wcomment warning from a stray "/*" in a header comment.
@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Coverage

Total lines: 74.28% → 74.28% (-0.00 pp)

File Baseline Current Δ Touched
src/core/http_connection_tls.c 73.39% 73.67% +0.28 pp
src/http3/http3_callbacks.c 61.64% 62.93% +1.29 pp
src/http3/http3_listener.c 66.19% 64.74% -1.44 pp
src/http_server_class.c 52.07% 52.02% -0.05 pp

@EdmondDantes EdmondDantes merged commit 15e543e into main Jul 4, 2026
8 checks passed
@EdmondDantes EdmondDantes deleted the 93-worker-retire-graceful-shutdown branch July 4, 2026 12:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant