Skip to content
This repository was archived by the owner on May 8, 2026. It is now read-only.

Commit 6466166

Browse files
fix: use all known headers to detect connectivity errors (#2841)
Change-Id: I4c3edfc2548a2115576f0aea997781929baeb9cf
1 parent 971c34c commit 6466166

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/data/v2/internal/csm/tracers/BuiltinMetricsTracer.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import com.google.api.core.ObsoleteApi;
2222
import com.google.api.gax.retrying.ServerStreamingAttemptException;
23+
import com.google.bigtable.v2.ResponseParams;
2324
import com.google.cloud.bigtable.data.v2.internal.csm.MetricRegistry;
2425
import com.google.cloud.bigtable.data.v2.internal.csm.attributes.ClientInfo;
2526
import com.google.cloud.bigtable.data.v2.internal.csm.attributes.MethodInfo;
@@ -33,6 +34,7 @@
3334
import io.grpc.Deadline;
3435
import io.grpc.Status;
3536
import java.time.Duration;
37+
import java.util.Optional;
3638
import java.util.concurrent.CancellationException;
3739
import java.util.concurrent.TimeUnit;
3840
import java.util.concurrent.atomic.AtomicBoolean;
@@ -398,6 +400,22 @@ private void recordAttemptCompletion(@Nullable Throwable throwable) {
398400
sidebandData.getResponseParams(),
399401
code,
400402
sidebandData.getGfeTiming());
403+
}
404+
405+
boolean seenServer =
406+
Optional.ofNullable(sidebandData.getPeerInfo())
407+
.map(pe -> pe.getApplicationFrontendId() != 0)
408+
.orElse(false);
409+
410+
seenServer =
411+
seenServer
412+
|| Optional.ofNullable(sidebandData.getResponseParams())
413+
.map(rp -> !ResponseParams.getDefaultInstance().equals(rp))
414+
.orElse(false);
415+
416+
seenServer = seenServer || (sidebandData.getGfeTiming() != null);
417+
418+
if (seenServer) {
401419
recorder.connectivityErrorCount.record(
402420
clientInfo, tableId, methodInfo, sidebandData.getResponseParams(), code, 0);
403421
} else {

0 commit comments

Comments
 (0)