Skip to content

fix(server): stop recursive restart wrapper causing spawn EAGAIN outage#231

Merged
parth0025 merged 1 commit into
stagingfrom
fix/server-wrapper-fork-bomb
Jun 10, 2026
Merged

fix(server): stop recursive restart wrapper causing spawn EAGAIN outage#231
parth0025 merged 1 commit into
stagingfrom
fix/server-wrapper-fork-bomb

Conversation

@parth0025

Copy link
Copy Markdown
Collaborator

Root cause of the persistent staging 502: server.js recursively spawned new wrapper processes on every crash. This morning's crash-loop stacked wrappers until the OS hit spawn EAGAIN (errno -11, confirmed in pm2 logs), so even the already-fixed code could not start. server.js now requires index.js in-process (pm2 owns restarts), and the deploy workflow gains a post-restart port-4003 health probe + pm2 log tail so failed boots are visible in the run log. NOTE: merging this is necessary but not sufficient — orphaned wrapper processes must be killed on the server once (commands provided in chat).

🤖 Generated with Claude Code

… check

server.js re-spawned node server.js on every crash, so a crash-loop
stacked wrapper processes until the OS process table filled and every
spawn failed with EAGAIN, keeping staging at 502 even after the
underlying crash was fixed. The entry point now runs index.js
in-process and leaves restarts to pm2. The deploy workflow also gains
a post-restart health probe on the app port plus a pm2 log tail, so a
deploy that leaves the app down says so in the run log instead of
reporting success.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: f00248b6-de76-46b5-8804-99130dc2feff

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/server-wrapper-fork-bomb

Comment @coderabbitai help to get the list of available commands and usage tips.

@parth0025 parth0025 merged commit 8c8080a into staging Jun 10, 2026
4 checks passed
@parth0025 parth0025 deleted the fix/server-wrapper-fork-bomb branch June 10, 2026 15:18
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