Skip to content

Commit 7d770a6

Browse files
JoshLove-msftpaterasMSFT
authored andcommitted
Improve cancellation error handling (#28713)
* Improve cancellation error handling * Increase threshold for flaky tests * More flaky tests
1 parent d98a17a commit 7d770a6

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

sdk/servicebus/Azure.Messaging.ServiceBus/src/Amqp/AmqpReceiver.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -241,8 +241,8 @@ private async Task<ReceivingAmqpLink> OpenReceiverLinkAsync(
241241
// to log here.
242242
throw;
243243
}
244-
catch (TaskCanceledException)
245-
when (_isProcessor)
244+
catch (OperationCanceledException)
245+
when (_isProcessor && cancellationToken.IsCancellationRequested)
246246
{
247247
// do not log this as the processor is shutting down
248248
throw;

sdk/servicebus/Azure.Messaging.ServiceBus/src/Receiver/ServiceBusReceiver.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -302,8 +302,8 @@ internal async Task<IReadOnlyList<ServiceBusReceivedMessage>> ReceiveMessagesAsy
302302
maxWaitTime,
303303
cancellationToken).ConfigureAwait(false);
304304
}
305-
catch (TaskCanceledException ex)
306-
when (isProcessor)
305+
catch (OperationCanceledException ex)
306+
when (isProcessor && cancellationToken.IsCancellationRequested)
307307
{
308308
Logger.ProcessorStoppingReceiveCanceled(Identifier, ex.ToString());
309309
scope.Failed(ex);

sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/ReceiverLiveTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ public async Task ReceiveMessagesWhenQueueEmpty()
157157
Assert.ThrowsAsync<TaskCanceledException>(async () => await receiver.ReceiveMessagesAsync(1, cancellationToken: cancellationTokenSource.Token));
158158
var stop = DateTime.UtcNow;
159159

160-
Assert.That(stop - start, Is.EqualTo(TimeSpan.FromSeconds(3)).Within(TimeSpan.FromSeconds(3)));
160+
Assert.That(stop - start, Is.EqualTo(TimeSpan.FromSeconds(3)).Within(TimeSpan.FromSeconds(5)));
161161
}
162162
}
163163

@@ -230,7 +230,7 @@ public async Task CancellingDoesNotBlockSubsequentReceives(bool prefetch)
230230
Assert.AreEqual(1, msg.DeliveryCount);
231231
var end = DateTime.UtcNow;
232232
Assert.NotNull(msg);
233-
Assert.Less(end - start, TimeSpan.FromSeconds(5));
233+
Assert.Less(end - start, TimeSpan.FromSeconds(10));
234234
}
235235
}
236236

sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/SessionReceiverLiveTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ public async Task ReceiveMessagesWhenQueueEmpty()
244244
Assert.ThrowsAsync<TaskCanceledException>(async () => await receiver.ReceiveMessagesAsync(1, cancellationToken: cancellationTokenSource.Token));
245245
var stop = DateTime.UtcNow;
246246

247-
Assert.That(stop - start, Is.EqualTo(TimeSpan.FromSeconds(3)).Within(TimeSpan.FromSeconds(3)));
247+
Assert.That(stop - start, Is.EqualTo(TimeSpan.FromSeconds(3)).Within(TimeSpan.FromSeconds(5)));
248248
}
249249
}
250250

@@ -1014,7 +1014,7 @@ public async Task CancellingDoesNotBlockSubsequentReceives(bool prefetch)
10141014
Assert.AreEqual(1, msg.DeliveryCount);
10151015
var end = DateTime.UtcNow;
10161016
Assert.NotNull(msg);
1017-
Assert.Less(end - start, TimeSpan.FromSeconds(5));
1017+
Assert.Less(end - start, TimeSpan.FromSeconds(10));
10181018
}
10191019
}
10201020
}

0 commit comments

Comments
 (0)