Repository navigation
Fix and harden node debug launches - #2268
Merged
vrubezhny merged 2 commits intoNov 6, 2026
Merged
Conversation
Several issues in the node debug launch path could make debug launches hang indefinitely with no diagnostics: - the wait for the debug server's "listening" announcement had a broken timeout (Duration.compareTo(...) < 3 is always true) and parsed each stdout chunk in isolation; fix the timeout, parse the accumulated output, and log the adapter's stderr - bind the debug server to 127.0.0.1 explicitly: on systems where localhost resolves to ::1 the DAP server and the adapter's internal servers end up on different loopback families - pass LD_LIBRARY_PATH to debuggees: the debug adapter builds the debuggee environment from the launch parameters only, so variables the runtime depends on must be forwarded explicitly - bound the DAP attach/handshake with a watchdog that cancels the launch after 2 minutes and dumps thread stacks and adapter state instead of hanging forever (the underlying handshake wait has no timeout of its own)
- replace the unbounded launch-termination wait loops with bounded (2 min) checks so a stuck launch fails the test visibly instead of hanging the build - include the launch console output (debuggee stdout/stderr as forwarded by the debug adapter) in failure messages - dump the command line, state and selected environment of the running node processes when a debug launch fails, to diagnose debuggee/debug-adapter issues on remote agents
Contributor
Author
|
/request-license-review |
✔️ All licenses already successfully vetted. Workflow run (with attached summary files): |
|
vrubezhny
merged commit Nov 6, 2026
131e05d
into
eclipse-wildwebdeveloper:master
12 of 13 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes several latent issues that could make node debug launches hang
indefinitely without any diagnostics (found while testing the Node.js 26
upgrade #2265, but independent of it):
so a missed announcement hung the launch forever) and make its output
parsing chunk-safe; log the debug adapter's stderr
IPv4/IPv6 mismatches on systems where localhost resolves to ::1
environment from launch parameters only, nothing is inherited)
and dumps thread stacks instead of hanging forever
console output and running node process state in failure messages