You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
var hangPayload = new HangPipeReader(); // a pipe reader whose ReadAsync hangs until canceled
var timeout = new CancellationTokenSource(100);
var request = new OutgoingRequest(new ServiceAddress(Protocol.IceRpc))
{
Payload = handPayload;
};
connection.InvokeAsync(hangPayload, timeout.Token);
The problem is that we no longer create a linked token source in the invoke code to send the payload (we just abort the stream if the application cancellation token is canceled...). It's related to dotnet/runtime#69675 (comment)
We need to add tests to ensure that invocation and dispatch cancellation works even when the payload reader/writer hang.
The text was updated successfully, but these errors were encountered:
It's in anticipation of the weird Quic implementation where the cancellation of stream.ReadAsync triggers under the hood the sending of the STOP_SENDING frame with the DefaultStreamErrorCode error code. See dotnet/runtime#69675 (comment) and the previous comments.
The following hangs right now:
The problem is that we no longer create a linked token source in the invoke code to send the payload (we just abort the stream if the application cancellation token is canceled...). It's related to dotnet/runtime#69675 (comment)
We need to add tests to ensure that invocation and dispatch cancellation works even when the payload reader/writer hang.
The text was updated successfully, but these errors were encountered: