Handle EOFError and ConnectionResetError without chaining exceptions in server connection failure #273
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 PR updates the exception handling logic in the client-server connection code. Specifically, it modifies how
EOFError
andConnectionResetError
are handled during connection failures. The goal is to avoid exception chaining (from e
) for these specific error types, while maintaining chaining for all other exceptions.Changes
Added conditional logic to raise
RuntimeError
without from e when the exception isEOFError
orConnectionResetError
.For all other exceptions, the existing behavior (raising
RuntimeError
withfrom e
) is preserved.Rationale
EOFError
andConnectionResetError
indicate specific situations where the connection is lost in a more predictable way (e.g., server gracfully closing the connection).Avoiding exception chaining for these cases provides a clearer stack trace, since the original exception doesn't add much value in these specific cases.
For other unexpected errors, preserving
from e
helps retain context for debugging.