grpc / grpc/grpc-java

Outlier detection behavior for client cancellations and hedged streams

Open
#12,834 4 comments 0 reactions 1 assignee Claimed by @AgraVator View on GitHub
question
Dominant language
Java
Stars
12.1k
Forks
4k
Avg merge
2d 17h
Merged PRs (30d)
37

Description

The stream tracer for outlier detection seems to [record each stream closure](https://github.com/grpc/grpc-java/blob/3db3235ebdc5b73afaef24f790f2ef9e8300b10b/util/src/main/java/io/grpc/util/OutlierDetectionLoadBalancer.java#L487) with `status.isOk() != true` as an error. The rate of success is then used for success rate and failure percentage outlier detectors.

I'd like to understand more as to what happens in the following cases:
- A hedged stream is cancelled because another winning stream was committed.
- The client cancels the call due to context expiration or any other reason unrelated to the call itself.

Would it still be recorded as an error and accounted for outlier detection?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.