Skip to content

Releases: Azure/azure-event-hubs-dotnet

3.0.0

19 Feb 17:59
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

Bug fixes

  • A Fix implemented to omit failures in receive handler. With this change, receive handler will continue working until handler is cancelled. (#354)

Features/Enhancements

  • Client to throw EventHubsTimeoutException instead of System.TimeoutException for consistency. (#328)
  • Adding send plugin support to SDK. With plugins, you can manipulate or log events/messages right before they are sent. (#324)
  • EventHubPartitionRuntimeInformation.IsEmpty will depict whether subject partition has any messages or not. (#352)
  • EventData.SystemProperties made public for addressing mockability concerns. (#332)

Microsoft.Azure.EventHubs.Processor

Breaking changes

  • ILeaseManager.GetAllLeases removed and ILeaseManager.GetAllLeasesAsync() added. (#357 )

Bug fixes

  • Fixing a cleanup issue at processor unregister call stack which was failing the next register call on the same host. (#342)

Features/Enhancements

  • Use Azure Storage Account NameValidator to check validity of LeaseContainerName. (#307)
  • Lease manager now conducts lease operations in parallel instead of sequential which helps to renew or acuire leases quicker than before. (#333)
  • Multiple improvements to reduce the number of storage calls in lease manager. (#357)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/3.0.0
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/3.0.0

2.2.1

04 Oct 22:45
e9fdb57
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

Bug fixes

  • Fixed a bug where client was missing AMQP message properties in the received Event Data. (#302)
  • System.IdentityModel.Tokens.Jwt 5.0 supports only .NetCore builds thus moved net461 build dependency to 4.X (#308)

Features/Enhancements

  • Runtime operations to retry on SocketException and TaskCanceledException exception types. This change helps to reduce number of intermittent exceptions due to network connectivity issues. (#289)
  • RetryPolicy improvement to isolate failures from concurrent operations. (#301)
  • Don't retry runtime operations if close called on the client. This helps to stop potential ObjectDisposed exceptions during client close calls. (#313)

Microsoft.Azure.EventHubs.Processor

Bug fixes

  • Avoid double counting of owned and expired leases. (#309)
  • Wired up proxy settings to storage client when proxy is enabled for the subject host. (#311)

Features/Enhancements

  • PartitionContext.Lease made public. (#304)
  • Provide last exception when all retries exhausted during register host calls. (#314)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/2.2.1
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/2.2.1

2.1.0

13 Jun 00:33
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

Bug fixes

  • Fixes a bug at batch size calculation observed when batch is built by small events. (#268)
  • Fixes a bug causing ObjectDisposedExceptions when send retried with the same set of EventDatas (#275)

Features/Enhancements

  • Custom proxy endpoint support: Event Hubs clients were able to work with system wide proxy settings. With this change client can be configured for custom endpoints. (#252)

Microsoft.Azure.EventHubs.Processor

Bug fixes

  • Fixes empty offset error observed when subject partition is idle. (#253)
  • Notify partition id in the error callback if lease update call fails. (#257)

Features/Enhancements

  • AAD/RBAC Token Provider support for EPH (#276, #281)
  • Event Processor Host lease management improvements to reduce partition shuffle across nodes.
    • Calculate remaining renew interval which will reduce lease losses. (#264)
    • Partition manager lease handling improvements to parallelize and prioritize renewal of owned leases. (#266)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/2.1.0
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/2.1.0

2.0.1 Microsoft.Azure.EventHubs.Processor

13 Mar 22:24
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs.Processor

Dependency changes

Bug fixes

  • A lease might have empty offset stored if there are no events on the partitions. This can result in host initialization failures. Fix addresses the issue. (#253)

Here is the corresponding NuGet package:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/2.0.1

2.0.0

28 Feb 23:07
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

Breaking changes

  • Introducing EventPosition class to declare position information while creating a receiver. PartitionReceiver.StartOfStream and PartitionReceiver.EndOfStream are removed.
  • IPartitionReceiveHandler introduces MaxBatchSize which needs to be implemented as part of the interface.

Bug fixes

  • EventDataBatch with partition-key batch size calculation related issues are fixed. (#198)
  • EventData.SystemProperties to inherit System.Dictionary. This helps to avoid overriding event properties when send through IOT endpoints. (#206)
  • Fixed a receive stuck issue with receive handlers when the batch size was not provided by implementing client. We set the batch size as 10 with this fix. (#235)

Features/Enhancements

  • Receiver identifier. This adds an identifier aka. name to a receiver. The receiver names are used to enhance client side exception messages for debugging purpose. (#226)
  • Start from a sequence number. Clients are now able to start receiving from a given sequence number with this new API. (#230)
  • Receive handler provides invokeWhenNoEvents flag to control null receive behavior. When set, receive handler callback is invoked on receive timeouts as well. (#238)
  • PartitionContext provides a CancellationTokenSource which can be used to stop long running event processes, (#187)

Microsoft.Azure.EventHubs.Processor

Bug fixes

  • EventHubsConnectionStringBuilder crashes when shared access signature is provided. (#219)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/2.0.0
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/2.0.0

2.0.0-preview

04 Jan 21:48
db433bd
Compare
Choose a tag to compare
2.0.0-preview Pre-release
Pre-release

This preview release of Azure Event Hubs client supports Role-Based Access Control and Managed Service Identity.

Here is the corresponding NuGet package:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/2.0.0-preview

1.1.0

05 Dec 20:36
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

  • Client entities should inherit retry policy from parent client. (#200)
  • Adding receiver runtime metrics support. (#180)
  • Moving to runtime 2.0 (#205)
  • Adding Diagnostic Source instrumentation for send and receive (#203, #212, #214)

Microsoft.Azure.EventHubs.Processor

  • Adding PartitionManagerOptions (#202)
  • Moving to runtime 2.0 (#205)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/1.1.0
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/1.1.0

1.0.3

23 Aug 00:55
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

  • Enabling web-sockets support (#177)
  • Using ConfigureAwait(false) to avoid context restoration in EventHubPartitionPump.cs, PartitionPump.cs, AmqpPartitionReceiver.cs, AmqpServiceClient.cs (#182)
  • Fixing a rare race issue on receiver pump which was emerging during repetitive open/close (#175)
  • Fixing receiver-stuck issue which was observed when large receive-timeout values used (#195)
  • Moving to Azure AMQP 2.1.1 (#196)
  • Fixing an issue on RetryPolicy where parallel async operations of the same client race when incrementing retry counter (#196)

Microsoft.Azure.EventHubs.Processor

  • Fixing EPH lease-lost decision logic (#179)

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/1.0.3
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/1.0.3

1.0.2

02 Aug 01:31
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

  • Slim down AsyncLock by removing unnecessary checks and calls. #153
  • Allow at least 60 seconds for AMQP session creation. #154
  • Adding batch event data API. #157
  • Fix wrong audience on the ActiveClientLink which was causing token expiry after 60 minutes. #164
  • Adding shared access signature support. #174

Please note that there are no functional changes in Microsoft.Azure.EventHubs.Processor library for this release.

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/1.0.2
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/1.0.2

1.0.1

24 Mar 17:00
Compare
Choose a tag to compare

Microsoft.Azure.EventHubs

  • Client to honor remaining time while creating AMQP links. #128
  • Receive call will return NULL instead of throwing a TimeoutException under some special conditions like link timeout. #130
  • Fixed the issue where unregistering receive handler was throwing OperationCanceledException. #135

Microsoft.Azure.EventHubs.Processor

  • VS 2017 NuGet packaging issue fixed. #107
  • PartitionPump delivers ReceiverDisconnectedException on processor host. #109
  • Processor host will deliver Enumerable.Empty instead of NULL when EventProcessorOptions.InvokeProcessorAfterReceiveTimeout is set. #124
  • Processor will failfast when an unhandled exception detected. #127
  • Fixed a rare race issue in processor observed during lease initialization. #141
  • Processor host will shut down gracefully on ReceiverDisconnectedException. #137
  • Fixed an issue where 2 different hosts ending up owning the same lease for a short duration. #117
  • Fixed an issue where CheckpointAsync() was not checkpointing current batch but the previous one. #117
  • Fixed ExceptionHandled trace from EventSource. #117

Here are the corresponding NuGet packages:
https://www.nuget.org/packages/Microsoft.Azure.EventHubs/1.0.1
https://www.nuget.org/packages/Microsoft.Azure.EventHubs.Processor/1.0.1

For the full list of issues and pull requests for this release, refer to: https://github.com/Azure/azure-event-hubs-dotnet/milestone/5