Hello,
receiving data from Event Hub stops after a while when the following conditions are met:
- messages contain lots of fields (e.g. 38 field including an array)
- using ConnectivityMode.Http
ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Http;
Data rate is about 1 message / second.
Same results when using ConnectivityMode.AutoDetect and client falls back to useHTTP because of firewall.
If ConnectivityMode is set to TCP, then there is no problem, it is stable (with the very same code). It is very confusing as it works for a while but then it stops (after a few seconds to 70 minutes). The easiest way to reproduce is processing lots of accumulated messages from the Event Hub without checkpoints. It stops after 10-30 records.
The issue can be reproduced 100%, using both EventHubClient andEventProcessorHost.
Using the latest available Azure libraries:
Microsoft.Azure.ServiceBus.EventProcessorHost v2.1.5
WindowsAzure.ServiceBus v3.1.7
Tried to change TransportType to both Amqp andNetMessaging but same results.
Tried displaying hidden internal exceptions via EventProcessorOptions.ExceptionReceived, but nothing relevant raises (mostly Task cancelled exceptions).
Tried changing different parameters in EventProcessorOptions (e.g. MaxBatchSize, PrefetchCount).
Tried to increase EventHub Throughput Units, same results.
Tried to run it from different hosts, it can be reproduced on all of them.
Tried to create event hub in a different region, same results.
If message fields are reduced to e.g. 5 or I set ConnectivityMode.Tcp it works properly. There is nothing in the documentation about limitations.
Any more idea? Is it some rare bug in Azure lib?
Thanks