kpatel006 commented on code in PR #19891:
URL: https://github.com/apache/pinot/pull/19891#discussion_r4310464408


##########
pinot-broker/src/main/java/org/apache/pinot/broker/routing/instanceselector/BaseInstanceSelector.java:
##########
@@ -446,6 +447,9 @@ void refreshSegmentStates() {
                 + "(all candidate instances: {} are disabled, counting segment 
as unavailable)", segment,
             _tableNameWithType, candidateInstances);
         unavailableSegments.add(segment);
+        if (candidates.isEmpty()) {
+          segmentsWithoutCandidates.add(segment);

Review Comment:
   The implementation PR (https://github.com/apache/pinot/pull/19908) fixes 
this by carrying the exclusion reason into the classification:
    - BaseBrokerRoutingManager L505-510 snapshots the admin-enabled server set 
before removing failure-detector exclusions. L529/606/655 pass it to the 
selectors through the new onInstancesChange overload (BaseInstanceSelector 
L568-572).
   - BaseInstanceSelector L461-477 keeps only candidates in that admin-enabled 
set. A segment is eligible only if at least one candidate is admin-enabled but 
excluded by the failure detector. Both meters (L507-511, L644) read that 
classification.



-- 
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]

Reply via email to