Skip to content

Commit 1b2cf99

Browse files
authored
Merge pull request #2204 from murgatroid99/grpc-js_outlier_detection_failure_percentage_fix
grpc-js: Outlier Detection: fix failure percentage min hosts check
2 parents 3db72f9 + 8664c83 commit 1b2cf99

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

packages/grpc-js/src/load-balancer-outlier-detection.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,15 @@ export class OutlierDetectionLoadBalancer implements LoadBalancer {
500500
}
501501
trace('Running failure percentage check. threshold=' + failurePercentageConfig.threshold + ' request volume threshold=' + failurePercentageConfig.request_volume);
502502
// Step 1
503-
if (this.addressMap.size < failurePercentageConfig.minimum_hosts) {
503+
let addressesWithTargetVolume = 0;
504+
for (const mapEntry of this.addressMap.values()) {
505+
const successes = mapEntry.counter.getLastSuccesses();
506+
const failures = mapEntry.counter.getLastFailures();
507+
if (successes + failures >= failurePercentageConfig.request_volume) {
508+
addressesWithTargetVolume += 1;
509+
}
510+
}
511+
if (addressesWithTargetVolume < failurePercentageConfig.minimum_hosts) {
504512
return;
505513
}
506514

0 commit comments

Comments
 (0)