mirror of https://github.com/grpc/grpc-java.git
core: In PF, remove useless requestConnection for CONNECTING subchannel
It doesn't do anything. Call scheduleNextConnection() unconditionally since it is responsible for checking if `enableHappyEyeballs == true`. It's also surprising to check in the CONNECTING case but not the IDLE case.
This commit is contained in:
parent
2c93791c98
commit
82a8d57396
|
|
@ -385,11 +385,7 @@ final class PickFirstLeafLoadBalancer extends LoadBalancer {
|
||||||
scheduleNextConnection();
|
scheduleNextConnection();
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (enableHappyEyeballs) {
|
scheduleNextConnection();
|
||||||
scheduleNextConnection();
|
|
||||||
} else {
|
|
||||||
subchannelData.subchannel.requestConnection();
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case TRANSIENT_FAILURE:
|
case TRANSIENT_FAILURE:
|
||||||
addressIndex.increment();
|
addressIndex.increment();
|
||||||
|
|
|
||||||
|
|
@ -361,11 +361,7 @@ public class PickFirstLeafLoadBalancerTest {
|
||||||
// Second acceptResolvedAddresses shouldn't do anything
|
// Second acceptResolvedAddresses shouldn't do anything
|
||||||
loadBalancer.acceptResolvedAddresses(
|
loadBalancer.acceptResolvedAddresses(
|
||||||
ResolvedAddresses.newBuilder().setAddresses(servers).setAttributes(affinity).build());
|
ResolvedAddresses.newBuilder().setAddresses(servers).setAttributes(affinity).build());
|
||||||
if (enableHappyEyeballs) {
|
inOrder.verify(mockSubchannel1, never()).requestConnection();
|
||||||
inOrder.verify(mockSubchannel1, never()).requestConnection();
|
|
||||||
} else {
|
|
||||||
inOrder.verify(mockSubchannel1, times(1)).requestConnection();
|
|
||||||
}
|
|
||||||
inOrder.verify(mockHelper, never()).updateBalancingState(any(), any());
|
inOrder.verify(mockHelper, never()).updateBalancingState(any(), any());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -862,8 +858,7 @@ public class PickFirstLeafLoadBalancerTest {
|
||||||
loadBalancer.requestConnection();
|
loadBalancer.requestConnection();
|
||||||
inOrder.verify(mockSubchannel2).start(stateListenerCaptor.capture());
|
inOrder.verify(mockSubchannel2).start(stateListenerCaptor.capture());
|
||||||
SubchannelStateListener stateListener2 = stateListenerCaptor.getValue();
|
SubchannelStateListener stateListener2 = stateListenerCaptor.getValue();
|
||||||
int expectedRequests = enableHappyEyeballs ? 1 : 2;
|
inOrder.verify(mockSubchannel2).requestConnection();
|
||||||
inOrder.verify(mockSubchannel2, times(expectedRequests)).requestConnection();
|
|
||||||
|
|
||||||
stateListener2.onSubchannelState(ConnectivityStateInfo.forNonError(CONNECTING));
|
stateListener2.onSubchannelState(ConnectivityStateInfo.forNonError(CONNECTING));
|
||||||
|
|
||||||
|
|
@ -871,11 +866,7 @@ public class PickFirstLeafLoadBalancerTest {
|
||||||
loadBalancer.requestConnection();
|
loadBalancer.requestConnection();
|
||||||
inOrder.verify(mockHelper, never()).updateBalancingState(any(), any());
|
inOrder.verify(mockHelper, never()).updateBalancingState(any(), any());
|
||||||
inOrder.verify(mockSubchannel1, never()).requestConnection();
|
inOrder.verify(mockSubchannel1, never()).requestConnection();
|
||||||
if (enableHappyEyeballs) {
|
inOrder.verify(mockSubchannel2, never()).requestConnection();
|
||||||
inOrder.verify(mockSubchannel2, never()).requestConnection();
|
|
||||||
} else {
|
|
||||||
inOrder.verify(mockSubchannel2).requestConnection();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue