Repository navigation
Commit 3390e5c
authored
xds: Make timestamp tracking variables volatile in ExternalProcessorClientInterceptor (grpc#13003)
Make timestamp tracking variables volatile in
ExternalProcessorClientInterceptor to fix data race reported by TSAN.
These fields track timestamps for recording latency metrics. They were
being read and written concurrently across multiple threads:
The application thread calling the gRPC stub (e.g. start and halfClose).
The data plane response thread (e.g., `onHeaders` and `onClose`).
The external processor client response thread processing the response
callback (e.g. `onNext` which invokes `proceedWithHalfClose`,
`proceedWithHeaders`, etc.).1 parent decc3a1 commit 3390e5c
1 file changed
Lines changed: 4 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
297 | 297 | | |
298 | 298 | | |
299 | 299 | | |
300 | | - | |
301 | | - | |
302 | | - | |
303 | | - | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
304 | 304 | | |
305 | 305 | | |
306 | 306 | | |
| |||
0 commit comments