> AggregateException.Handle() should be called here, as the faulted task is not 
> going to be yielded to the user.

You mean simply like this (+ the logic from your second remark here)?

```cs
t.Exception.Handle(e =>
    {
        _callbackByRequestId[msg.RequestId].HandleFailure(t.Exception);
        _callbackByRequestId.TryRemove(msg.RequestId, out _);
        return true;
    });
```

> Additionally, I think if the sending fails, the whole connection should be 
> "trashed" (empty queues, respond with the errors back to the user) and close 
> the connection.

That sounds like a good idea. I guess we have to throw the exception then for 
every request for which we have a callback registered at that time.

[ Full content available at: https://github.com/apache/tinkerpop/pull/1016 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to