diff --git a/sdk/eventhub/Azure.Messaging.EventHubs.Processor/src/EventProcessorClient.cs b/sdk/eventhub/Azure.Messaging.EventHubs.Processor/src/EventProcessorClient.cs
old mode 100644
new mode 100755
index 383ff18a3d9c..d650b0add2c1
--- a/sdk/eventhub/Azure.Messaging.EventHubs.Processor/src/EventProcessorClient.cs
+++ b/sdk/eventhub/Azure.Messaging.EventHubs.Processor/src/EventProcessorClient.cs
@@ -952,7 +952,7 @@ private async Task RunAsync(CancellationToken cancellationToken)
}
catch (EventHubsException ex)
{
- var errorEventArgs = new ProcessErrorEventArgs(null, ex.Message, ex, cancellationToken);
+ var errorEventArgs = new ProcessErrorEventArgs(null, ex.Message, ex.InnerException ?? ex, cancellationToken);
_ = OnProcessErrorAsync(errorEventArgs);
}
catch (Exception ex)
@@ -1040,7 +1040,7 @@ private async Task StartPartitionProcessingAsync(string partitionId,
// partition.
Logger.StartPartitionProcessingError(partitionId, ex.Message);
- var errorEventArgs = new ProcessErrorEventArgs(null, Resources.OperationListCheckpoints, ex, cancellationToken);
+ var errorEventArgs = new ProcessErrorEventArgs(partitionId, Resources.OperationListCheckpoints, ex, cancellationToken);
_ = OnProcessErrorAsync(errorEventArgs);
return;
diff --git a/sdk/eventhub/Azure.Messaging.EventHubs.Processor/tests/CheckpointStore/BlobsCheckpointStoreTests.cs b/sdk/eventhub/Azure.Messaging.EventHubs.Processor/tests/CheckpointStore/BlobsCheckpointStoreTests.cs
index 1aae94ceda20..2196f0c31027 100644
--- a/sdk/eventhub/Azure.Messaging.EventHubs.Processor/tests/CheckpointStore/BlobsCheckpointStoreTests.cs
+++ b/sdk/eventhub/Azure.Messaging.EventHubs.Processor/tests/CheckpointStore/BlobsCheckpointStoreTests.cs
@@ -3,11 +3,13 @@
using System;
using System.Collections.Generic;
+using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using Azure.Messaging.EventHubs.Core;
using Azure.Messaging.EventHubs.Processor.Diagnostics;
+using Azure.Storage;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Moq;
@@ -30,6 +32,29 @@ public class BlobsCheckpointStoreTests
private const string PartitionId = "1";
private readonly string OwnershipIdentifier = Guid.NewGuid().ToString();
+ ///
+ /// Provides the test cases for non-fatal exceptions that are not retriable
+ /// when encountered in a subscription.
+ ///
+ ///
+ public static IEnumerable