5.12.0 (2025-04-08)
Acknowledgments
Thank you to our developer community members who helped to make the Event Hubs client libraries better with their contributions to this release:
- tovyhnal (GitHub)
Features Added
-
Support for the Event Hubs geographic data replication feature has been enabled. Checking for whether or not this feature is enabled for your namespace can be done by querying for Event Hub properties using
EventHubProducerClient
orEventHubConsumerClient
and referencing the theIsGeoReplicationEnabled
property of the result.As part of this feature, the type of offset-related data has been changed from
long
tostring
to align with changes to the Event Hubs service API. To preserve backwards compatibility, the existing offset-related members have not been changed, and new members with names similar toOffsetString
and string-based parameters for method overloads have been introduced.The long-based offset members will continue to work for Event Hubs namespaces that do not have GeoDR replication enabled, but are discouraged for use and have been marked as obsolete.
Obsoleted properties:
EventData.Offset
LastEnqueuedEventProperties.Offset
PartitionProperties.LastEnqueuedOffset
Obsoleted method overloads:
EventPosition.FromOffset
EventHubsModelFactory.EventData
BlobCheckpointStore.UpdateCheckpointAsync
EventProcessorClient.UpdateCheckpointAsync
Bugs Fixed
- Fixed behavior in the
UpdateCheckpointAsync
method ofEventProcessorClient
to properly await the call to the checkpoint store. Previously, this was not awaited, causing the OTel span to open and close almost immediately and skip reporting any errors observed.
Other Changes
-
Enhanced retry logic to consider additional cases for web socket-based failures. In many cases, a
WebSocketException
is triggered which wraps aSocketException
with the details for the specific network conditions. Retry decisions are now based on the internal exception, if present, to ensure retries are correctly applied. -
Added annotations to make the package compatible with trimming and native AOT compilation.
-
Added Event Hub name to processor load balancing logs for additional context. (A community contribution, courtesy of tovyhnal)
-
Updated the
Microsoft.Azure.Amqp
dependency to 2.6.9, which contains several bug fixes. (see: commits)