-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix control flow in server-to-client callback handlers. (#42)
Prior to this change, a client callback handler that panics could cause a server running in the same process to stall waiting for a reply, if the panic was absorbed at a higher level without cleaning up the client. Although this combination of conditions is less common, it can be tricky to debug. To avert this, recover a panic from the callback handler and convert it into errors back to the server. In addition, the server was not cleaning up pending push-calls when shutting down in response to a client connection termination. This also fixes that problem on the server side. Add a regression test for callback handler panics.
- Loading branch information
1 parent
8fb19ae
commit 5f5e1a3
Showing
4 changed files
with
82 additions
and
13 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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