Skip to content

Fix event hubs "quota exceeded" exceptions #245

@sebastianburckhardt

Description

@sebastianburckhardt

In some cases Netherite users have seen exceptions like the following:

Microsoft.Azure.EventHubs.QuotaExceededException: Exceeded the maximum number of allowed receivers per partition in a consumer group which is 5.

There appear to be multiple reasons that contribute to this. Both of these issues should be investigated and fixed.

  • The client hash algorithm does not retry, nor generate a useful error message, when there are more than 5 clients in a bucket, which can happen. I saw in traces that even with 128 hash buckets, it may take only 256 elements to cause exhaustion due to normal imbalance. Thus we need to deal with this case better. For example, we can change the client id and retry.

  • EH clients are shutdown late in the shutdown process, which appears to sometimes hang, causing clients to not be released. Thus the number of "live" clients can be much larger than the number of nodes in the system. We should (a) shut down clients sooner, and (b) investigate and fix the underlying causes for the hangs.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions