pinot icon indicating copy to clipboard operation
pinot copied to clipboard

Add Support to tag a minion as Drained

Open krishna-st opened this issue 2 months ago • 1 comments

Implements a drain mode for Pinot Minion instances, allowing operators to gracefully scale down minions by preventing new task assignments while allowing existing tasks to complete.

  • Extended PUT /instances/{instanceName}/state to support DRAIN state for minion instances
  • Draining changes minion tag from minion_untaggedminion_drained, preventing Helix from assigning new tasks
  • Leverages Helix's native tag-based task assignment mechanism (.setInstanceGroupTag())

krishna-st avatar Dec 16 '25 00:12 krishna-st

Codecov Report

:x: Patch coverage is 70.45455% with 13 lines in your changes missing coverage. Please review. :white_check_mark: Project coverage is 63.28%. Comparing base (82b7d2a) to head (efe2d0f). :warning: Report is 2 commits behind head on master. :white_check_mark: All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...ntroller/helix/core/PinotHelixResourceManager.java 66.66% 5 Missing and 7 partials :warning:
...er/api/resources/PinotInstanceRestletResource.java 85.71% 0 Missing and 1 partial :warning:
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17375      +/-   ##
============================================
+ Coverage     63.25%   63.28%   +0.02%     
+ Complexity     1475     1474       -1     
============================================
  Files          3162     3162              
  Lines        188668   188711      +43     
  Branches      28869    28881      +12     
============================================
+ Hits         119348   119427      +79     
+ Misses        60074    60026      -48     
- Partials       9246     9258      +12     
Flag Coverage Δ
custom-integration1 100.00% <ø> (ø)
integration 100.00% <ø> (ø)
integration1 100.00% <ø> (ø)
integration2 0.00% <ø> (ø)
java-11 63.24% <70.45%> (+0.01%) :arrow_up:
java-21 63.25% <70.45%> (+0.02%) :arrow_up:
temurin 63.28% <70.45%> (+0.02%) :arrow_up:
unittests 63.28% <70.45%> (+0.02%) :arrow_up:
unittests1 55.59% <ø> (-0.01%) :arrow_down:
unittests2 34.03% <70.45%> (+0.03%) :arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov-commenter avatar Dec 16 '25 01:12 codecov-commenter