vstreamer: support 'useThrottler' so that clients can choose whther they at all want to involve the throttler#13187
Closed
shlomi-noach wants to merge 4 commits intovitessio:mainfrom
Conversation
…r when they've been 'check'ed Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
…hey at all want to involve the throttler. Some lightweight clients, such as the schema tracker or the binlog watcher, or messager, do not need the throttler, and since some of these clients are _always on_, we also do not _want_ them to continuously approach the throttler. One side effect of always engaging with the throttler is the infinite renewal of on-demand heartbeats Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
Contributor
Review ChecklistHello reviewers! 👋 Please follow this checklist when reviewing this Pull Request. General
If a new flag is being introduced:
If a workflow is added or modified:
Bug fixes
Non-trivial changes
New/Existing features
Backward compatibility
|
Contributor
Author
|
I could also go with a different approach: give each client a name, e.g. |
Contributor
Author
I'm actually leaning towards that approach. |
4 tasks
Contributor
Author
|
Closing in favor of #13195 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
An extension to #13177. This PR includes everything in #13177 and then adds more logic. I intentionally split the two apart so we can discuss the two changes separately.
#13177 says: "if the replica tablet's throttler is checked, then as result the primary tablet's throttler should request more heartbeats".
However, there are some clients that:
The particular clients are these three members of
tabletserver:For now, we consider all other clients as "need to use the throttler".
We add a flag
useThrottlerinVStream(). The callers ofVStream()now indicate whether they want to use the throttler or not.The reason this is done this way is because
tabletserver'svstreamengine is a single entity shared among multiple clients. It uses a single throttler client.Related Issue(s)
Checklist
Deployment Notes