Skip to content

Conversation

eshitachandwani
Copy link
Member

Original PRs : #8476 , #8483
Related issues : #8473 , #8474

RELEASE NOTES:

  • xds: Revert to allowing empty node ID in xDS bootstrap configuration
  • lrsclient:
    • Fix a race condition where the LRSClient was not initialized at creation time but it was being initialized at the time of calling the ReportLoad function.
    • Creating an LRSClient no longer requires a node ID.

davinci26 and others added 2 commits August 26, 2025 16:14
Fixes: grpc#8474

The race is in
[ReportLoad](https://github.com/grpc/grpc-go/blob/9186ebd774370e3b3232d1b202914ff8fc2c56d6/xds/internal/xdsclient/clientimpl_loadreport.go#L35C2-L44C21)
function of clientImpl. The implementation was recently changed as the
part of [xds client
migration](grpc@082a927).

The
[comment](https://github.com/grpc/grpc-go/blob/85240a5b02defe7b653ccba66866b4370c982b6a/xds/internal/xdsclient/clientimpl.go#L86C2-L87C16)
says that `lrsclient.LRSClient` should be initialized only at creation
time but that was not the case. It was being initialized at the time of
calling `ReportLoad` function.

RELEASE NOTES:

- lrsclient:
- Fix a race condition where the `LRSClient` was not initialized at
creation time but it was being initialized at the time of calling the
`ReportLoad` function.
	- 	Creating an `LRSClient` no longer requires a node ID.
Copy link

codecov bot commented Aug 26, 2025

Codecov Report

❌ Patch coverage is 75.00000% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.85%. Comparing base (7f0a3cc) to head (014e27a).
⚠️ Report is 1 commits behind head on v1.74.x.

Files with missing lines Patch % Lines
xds/internal/xdsclient/clientimpl.go 80.00% 2 Missing and 1 partial ⚠️
xds/internal/clients/lrsclient/lrsclient.go 0.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           v1.74.x    #8540      +/-   ##
===========================================
- Coverage    82.46%   81.85%   -0.61%     
===========================================
  Files          414      414              
  Lines        40434    40435       +1     
===========================================
- Hits         33344    33099     -245     
- Misses        5742     5967     +225     
- Partials      1348     1369      +21     
Files with missing lines Coverage Δ
xds/internal/clients/xdsclient/xdsclient.go 83.98% <ø> (-0.14%) ⬇️
xds/internal/xdsclient/clientimpl_loadreport.go 76.92% <ø> (+4.19%) ⬆️
xds/internal/clients/lrsclient/lrsclient.go 73.11% <0.00%> (+0.48%) ⬆️
xds/internal/xdsclient/clientimpl.go 82.05% <80.00%> (-0.48%) ⬇️

... and 34 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@eshitachandwani eshitachandwani merged commit e305d17 into grpc:v1.74.x Aug 26, 2025
25 of 26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants