Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Event Hubs Client] Prefetch Size In Bytes Option #15141

Merged

Conversation

jsquire
Copy link
Member

@jsquire jsquire commented Sep 14, 2020

Summary

The focus of these changes is to introduce an option for the various event consumers allowing the prefetch cache to be filled based on a size-based
heuristic rather than a count of events. This feature is considered a special case, helpful in scenarios where the size of events being read is not able to be known or predicted upfront and limiting resource use is valued over consistent and predictable performance.

Note: These API changes are part of a preview feature. The design and API surface were informally reviewed with the language architect but have not yet undergone formal review with the architecture board. I expect some changes, particularly around naming.

Last Upstream Rebase

Monday, September 14, 9:07am (EDT)

References and Related Issues

@jsquire jsquire added Event Hubs Client This issue points to a problem in the data-plane of the library. labels Sep 14, 2020
@jsquire jsquire added this to the [2020] October milestone Sep 14, 2020
@jsquire jsquire self-assigned this Sep 14, 2020
The focus of these changes is to introduce an option for the various event
consumers allowing the prefetch cache to be filled based on a size-based
heuristic rather than a count of events.  This feature is considered a
special case, helpful in scenarios where the size of events being read is
not able to be known or predicted upfront and limiting resource use is
valued over consistent and predictable performance.
@jsquire
Copy link
Member Author

jsquire commented Sep 14, 2020

/azp run net - eventhub - tests

@azure-pipelines
Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@jsquire
Copy link
Member Author

jsquire commented Sep 14, 2020

Manual run of the full suite taking place on the internal pipeline: #536700

Copy link
Member

@christothes christothes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

{
if (value.HasValue)
{
Argument.AssertAtLeast(value.Value, 0, nameof(PrefetchSizeInBytes));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is 0 a valid value?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oddly enough, yes. That will have the net effect of "always prefetch exactly one event no matter the size",

@jsquire jsquire merged commit 7755d23 into Azure:release/eventhubs-5.2.0b1 Sep 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Client This issue points to a problem in the data-plane of the library. Event Hubs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants