mirror of https://github.com/grpc/grpc-java.git
core: Eliminate NPE seen in PickFirstLeafLoadBalancer (#11013)
ref b/329420531
This commit is contained in:
parent
8a9ce990b0
commit
36e9f0dfac
|
|
@ -465,9 +465,13 @@ final class PickFirstLeafLoadBalancer extends LoadBalancer {
|
|||
log.log(Level.FINE, "Received health status {0} for subchannel {1}",
|
||||
new Object[]{newState, subchannelData.subchannel});
|
||||
healthStateInfo = newState;
|
||||
if (addressIndex.isValid()
|
||||
&& subchannels.get(addressIndex.getCurrentAddress()).healthListener == this) {
|
||||
updateHealthCheckedState(subchannelData);
|
||||
try {
|
||||
SubchannelData curSubChanData = subchannels.get(addressIndex.getCurrentAddress());
|
||||
if (curSubChanData != null && curSubChanData.healthListener == this) {
|
||||
updateHealthCheckedState(subchannelData);
|
||||
}
|
||||
} catch (IllegalStateException e) {
|
||||
log.fine("Health listener received state change after subchannel was removed");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue