xiangfu0 opened a new pull request, #17078:
URL: https://github.com/apache/pinot/pull/17078
This PR implements a runtime query throttling controller to keep servers
stable under load and improve UX.\n\nKey features:\n- Global concurrency gate
integrated with FCFS and Priority schedulers (pause/limit in-flight
queries).\n- Hooks into accounting levels: Alarm can optionally serialize
queries; Critical kills most expensive; Panic kills all (existing).\n- Dynamic
config updates: pinot.query.scheduler.throttling.* live-reload via accounting
watcher.\n- Admin API endpoints:\n - GET /throttling/state\n - POST
/throttling/setLimit { "_limit": N }\n\nConfig keys (under
pinot.query.scheduler.*):\n- throttling.pause_on_alarm=true|false\n-
throttling.alarm_max_concurrent=1\n-
throttling.normal_max_concurrent=<N>\n\nNotes:\n- Default concurrency derives
from query runner threads.\n- Heap-usage queue throttling remains available and
complementary.\n\nFollow-ups:\n- Add tests and docs for throttling behaviors
and admin API.,
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]