mirror of https://github.com/grpc/grpc-java.git
xds: Include max concurrent request limit in the error status for concurre… (#11845)
Include max concurrent request limit in the error status for concurrent connections limit exceeded
This commit is contained in:
parent
495a8906b2
commit
0f5503ebb1
|
@ -59,6 +59,7 @@ import io.grpc.xds.orca.OrcaPerRequestUtil.OrcaPerRequestReportListener;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.concurrent.atomic.AtomicLong;
|
import java.util.concurrent.atomic.AtomicLong;
|
||||||
|
@ -406,7 +407,8 @@ final class ClusterImplLoadBalancer extends LoadBalancer {
|
||||||
dropStats.recordDroppedRequest();
|
dropStats.recordDroppedRequest();
|
||||||
}
|
}
|
||||||
return PickResult.withDrop(Status.UNAVAILABLE.withDescription(
|
return PickResult.withDrop(Status.UNAVAILABLE.withDescription(
|
||||||
"Cluster max concurrent requests limit exceeded"));
|
String.format(Locale.US, "Cluster max concurrent requests limit of %d exceeded",
|
||||||
|
maxConcurrentRequests)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
final AtomicReference<ClusterLocality> clusterLocality =
|
final AtomicReference<ClusterLocality> clusterLocality =
|
||||||
|
|
|
@ -636,7 +636,7 @@ public class ClusterImplLoadBalancerTest {
|
||||||
assertThat(result.getStatus().isOk()).isFalse();
|
assertThat(result.getStatus().isOk()).isFalse();
|
||||||
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
||||||
assertThat(result.getStatus().getDescription())
|
assertThat(result.getStatus().getDescription())
|
||||||
.isEqualTo("Cluster max concurrent requests limit exceeded");
|
.isEqualTo("Cluster max concurrent requests limit of 100 exceeded");
|
||||||
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
||||||
} else {
|
} else {
|
||||||
assertThat(result.getStatus().isOk()).isTrue();
|
assertThat(result.getStatus().isOk()).isTrue();
|
||||||
|
@ -667,7 +667,7 @@ public class ClusterImplLoadBalancerTest {
|
||||||
assertThat(result.getStatus().isOk()).isFalse();
|
assertThat(result.getStatus().isOk()).isFalse();
|
||||||
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
||||||
assertThat(result.getStatus().getDescription())
|
assertThat(result.getStatus().getDescription())
|
||||||
.isEqualTo("Cluster max concurrent requests limit exceeded");
|
.isEqualTo("Cluster max concurrent requests limit of 101 exceeded");
|
||||||
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
||||||
} else {
|
} else {
|
||||||
assertThat(result.getStatus().isOk()).isTrue();
|
assertThat(result.getStatus().isOk()).isTrue();
|
||||||
|
@ -731,7 +731,7 @@ public class ClusterImplLoadBalancerTest {
|
||||||
assertThat(result.getStatus().isOk()).isFalse();
|
assertThat(result.getStatus().isOk()).isFalse();
|
||||||
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
assertThat(result.getStatus().getCode()).isEqualTo(Code.UNAVAILABLE);
|
||||||
assertThat(result.getStatus().getDescription())
|
assertThat(result.getStatus().getDescription())
|
||||||
.isEqualTo("Cluster max concurrent requests limit exceeded");
|
.isEqualTo("Cluster max concurrent requests limit of 1024 exceeded");
|
||||||
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
assertThat(clusterStats.totalDroppedRequests()).isEqualTo(1L);
|
||||||
} else {
|
} else {
|
||||||
assertThat(result.getStatus().isOk()).isTrue();
|
assertThat(result.getStatus().isOk()).isTrue();
|
||||||
|
|
Loading…
Reference in New Issue