Conversation
Signed-off-by: Sathish Babu <sbabu@progress.com>
…sPipeRunner Signed-off-by: Sathish Babu <sbabu@progress.com>
Vasu1105
approved these changes
Jan 20, 2026
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.
This pull request adds improved error handling and more robust test coverage for the named pipe communication logic in the local transport. The main focus is on making the pipe server more resilient to connection errors and ensuring that the client code can recover from transient failures or broken pipes.
Description
Error Handling Improvements:
try/catchblock around$pipeServer.WaitForConnection()in the PowerShell script to ensure the process exits cleanly if waiting for a connection fails, preventing the server from hanging indefinitely.Test Coverage Enhancements:
acquire_pipemethod to verify retry behavior when the pipe is not immediately available, when opening the pipe fails transiently, and when all retries are exhausted.run_commandto ensure it retries with a new pipe when anErrno::EPIPEoccurs and raises aPipeErrorif pipe recovery fails.Related Issue
Types of changes
Checklist: