-
Notifications
You must be signed in to change notification settings - Fork 2.3k
[QueryThrottler]Replace polling with topo server watch for config updates #18979
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
base: main
Are you sure you want to change the base?
[QueryThrottler]Replace polling with topo server watch for config updates #18979
Conversation
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
This reverts commit 8de07c7. Signed-off-by: siddharth16396 <[email protected]>
Signed-off-by: siddharth16396 <[email protected]>
Review ChecklistHello reviewers! 👋 Please follow this checklist when reviewing this Pull Request. General
Tests
Documentation
New flags
If a workflow is added or modified:
Backward compatibility
|
Signed-off-by: siddharth16396 <[email protected]>
|
The description looks good to me! I didn't get to this before my holiday vacation, but I promise to do it the week that I'm back. Thank you for the contribution! I apologize for the delay. |
| ThrottlerConfig throttler_config = 6; | ||
|
|
||
| // QueryThrottler provides a flexible throttling configuration that supports multiple throttling strategies beyond the standard tablet throttling. | ||
| querythrottler.Config query_throttler_config = 20000; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be 7
| vtorcdata.Keyspace vtorc_state = 11; | ||
|
|
||
| // QueryThrottler provides a flexible throttling configuration that supports multiple throttling strategies beyond the standard tablet throttling. | ||
| querythrottler.Config query_throttler_config = 20000; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be 12
This PR is clone of #18905 which i messed up pretty badly while rebasing for DCO commits 😢
Description
This PR Replaces periodic config polling (60s intervals) with event-driven topology server watches for QueryThrottler configuration updates. Instead of continuously reading config files on a timer, the throttler now subscribes to SrvKeyspace changes and reacts immediately when configs are updated in the topo server.
Changes Made
Removed the polling model:
Added event-driven topo watch:
New proto definitions:
Architecture improvements:
How it works
Benefits achieved:
Related Issue(s)
Checklist