Description
Currently, StreamingTransportClient starts a new task ResponseLoop, which reads a message with ReadAsync and sends it to the observer in a while loop with a cancellation token.
When StreamingTransportClient object is disposed, this task should be canceled with the cancellation token. Otherwise, the ResponseLoop will keep running and never end. However, we don't cancel it. After the task is completed, what we see in the logs are endless exception messages thrown from this loop as group communication has been ended.
The same bug is in TransportClient.
Attachments
Issue Links
- blocks
-
REEF-1223 IMRU Fault Tolerance - restart failed evaluators
- Resolved