watch: cancel pending restart on shutdown#63383
Open
trivikr wants to merge 1 commit into
Open
Conversation
Cancel any pending FilesWatcher debounce timer when watch mode clears its watchers. This prevents a queued change event from restarting the watched process after shutdown has started. Keep the watched child exit handling attached for the lifetime of the child so overlapping restart and shutdown paths do not remove each other's exit listeners. Signed-off-by: Kamat, Trivikram <16024985+trivikr@users.noreply.github.com> Assisted-by: openai:gpt-5.5
c0a9c2b to
7f3594d
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #63383 +/- ##
==========================================
- Coverage 90.06% 90.05% -0.02%
==========================================
Files 714 714
Lines 225629 225632 +3
Branches 42702 42673 -29
==========================================
- Hits 203211 203191 -20
+ Misses 14232 14230 -2
- Partials 8186 8211 +25
🚀 New features to boost your workflow:
|
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 a watch mode shutdown race where a pending debounced file change could still emit after
FilesWatcher.clear()closed the active watchers. That allowed watch mode to restart the child process after shutdown had already started, which could leaveout/Release/node --watch --inspectprocesses behind and fail CI’s leftover-process check.This cancels the pending debounce timer during watcher cleanup and makes watched child exit handling stable across overlapping restart/shutdown paths.
Noticed while examining flaky tests in ubuntu2404_sharedlibs_shared_x64/56356
Testing
The updated unit tests were run before/after
Before
After
Assisted-by: openai:gpt-5.5