From 626e649b56d27d7385bfa1caf30805c11bc3c3f0 Mon Sep 17 00:00:00 2001 From: Kannan J Date: Mon, 24 Aug 2026 03:32:31 +0000 Subject: [PATCH] xds: Make timestamp tracking variables volatile in ExternalProcessorClientInterceptor to fix data race reported by TSAN --- .../io/grpc/xds/ExternalProcessorClientInterceptor.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/xds/src/main/java/io/grpc/xds/ExternalProcessorClientInterceptor.java b/xds/src/main/java/io/grpc/xds/ExternalProcessorClientInterceptor.java index 80cfb0ac2ce..0bc79e5ec5d 100644 --- a/xds/src/main/java/io/grpc/xds/ExternalProcessorClientInterceptor.java +++ b/xds/src/main/java/io/grpc/xds/ExternalProcessorClientInterceptor.java @@ -297,10 +297,10 @@ private static class DataPlaneClientCall private final String backendService; private volatile Context callContext = Context.ROOT; - private long clientHeadersStartNanos; - private long clientHalfCloseStartNanos; - private long serverHeadersStartNanos; - private long serverTrailersStartNanos; + private volatile long clientHeadersStartNanos; + private volatile long clientHalfCloseStartNanos; + private volatile long serverHeadersStartNanos; + private volatile long serverTrailersStartNanos; private boolean protocolConfigSent = false; private ImmutableMap collectedAttributes;