Skip to content

Commit 1d26429

Browse files
authored
Change HappyEyeballs and new pick first LB flags default value to false (1.63.x backport) (#11176)
* port PR 11120 * Revert backported changes that aren't relevant for v1.63.x * Revert backported changes that aren't relevant for v1.63.x
1 parent b7c6067 commit 1d26429

File tree

6 files changed

+22
-12
lines changed

6 files changed

+22
-12
lines changed

core/src/main/java/io/grpc/internal/PickFirstLeafLoadBalancer.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,6 @@ final class PickFirstLeafLoadBalancer extends LoadBalancer {
6161
private static final Logger log = Logger.getLogger(PickFirstLeafLoadBalancer.class.getName());
6262
@VisibleForTesting
6363
static final int CONNECTION_DELAY_INTERVAL_MS = 250;
64-
public static final String GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS =
65-
"GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS";
6664
private final Helper helper;
6765
private final Map<SocketAddress, SubchannelData> subchannels = new HashMap<>();
6866
private Index addressIndex;
@@ -73,7 +71,7 @@ final class PickFirstLeafLoadBalancer extends LoadBalancer {
7371
private ConnectivityState rawConnectivityState = IDLE;
7472
private ConnectivityState concludedState = IDLE;
7573
private final boolean enableHappyEyeballs =
76-
GrpcUtil.getFlag(GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS, true);
74+
PickFirstLoadBalancerProvider.isEnabledHappyEyeballs();
7775

7876
PickFirstLeafLoadBalancer(Helper helper) {
7977
this.helper = checkNotNull(helper, "helper");

core/src/main/java/io/grpc/internal/PickFirstLoadBalancerProvider.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,21 @@
3333
* down the address list and sticks to the first that works.
3434
*/
3535
public final class PickFirstLoadBalancerProvider extends LoadBalancerProvider {
36+
public static final String GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS =
37+
"GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS";
3638
private static final String SHUFFLE_ADDRESS_LIST_KEY = "shuffleAddressList";
3739

3840
static boolean enableNewPickFirst =
39-
GrpcUtil.getFlag("GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST", true);
41+
GrpcUtil.getFlag("GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST", false);
42+
43+
public static boolean isEnabledHappyEyeballs() {
44+
return GrpcUtil.getFlag(GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS, false);
45+
}
46+
47+
@VisibleForTesting
48+
public static boolean isEnableNewPickFirst() {
49+
return enableNewPickFirst;
50+
}
4051

4152
@Override
4253
public boolean isAvailable() {

core/src/test/java/io/grpc/internal/PickFirstLeafLoadBalancerTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -142,8 +142,8 @@ public void uncaughtException(Thread t, Throwable e) {
142142
@Before
143143
public void setUp() {
144144
originalHappyEyeballsEnabledValue =
145-
System.getProperty(PickFirstLeafLoadBalancer.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS);
146-
System.setProperty(PickFirstLeafLoadBalancer.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS,
145+
System.getProperty(PickFirstLoadBalancerProvider.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS);
146+
System.setProperty(PickFirstLoadBalancerProvider.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS,
147147
enableHappyEyeballs ? "true" : "false");
148148

149149
for (int i = 1; i <= 5; i++) {
@@ -173,9 +173,9 @@ public void setUp() {
173173
@After
174174
public void tearDown() {
175175
if (originalHappyEyeballsEnabledValue == null) {
176-
System.clearProperty(PickFirstLeafLoadBalancer.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS);
176+
System.clearProperty(PickFirstLoadBalancerProvider.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS);
177177
} else {
178-
System.setProperty(PickFirstLeafLoadBalancer.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS,
178+
System.setProperty(PickFirstLoadBalancerProvider.GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS,
179179
originalHappyEyeballsEnabledValue);
180180
}
181181

xds/src/main/java/io/grpc/xds/XdsEndpointResource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ protected EdsUpdate doParse(Args args, Message unpackedMessage) throws ResourceI
101101
}
102102

103103
private static boolean isEnabledXdsDualStack() {
104-
return GrpcUtil.getFlag(GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS, true);
104+
return GrpcUtil.getFlag(GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS, false);
105105
}
106106

107107
private static EdsUpdate processClusterLoadAssignment(ClusterLoadAssignment assignment)

xds/src/test/java/io/grpc/xds/RingHashLoadBalancerTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -445,7 +445,8 @@ public void skipFailingHosts_pickNextNonFailingHost() {
445445
PickResult result = pickerCaptor.getValue().pickSubchannel(args);
446446
assertThat(result.getStatus().isOk()).isTrue();
447447
assertThat(result.getSubchannel()).isNull(); // buffer request
448-
verify(getSubChannel(servers.get(1))).requestConnection(); // kicked off connection to server2
448+
// verify kicked off connection to server2
449+
verify(getSubChannel(servers.get(1))).requestConnection();
449450
assertThat(subchannels.size()).isEqualTo(2); // no excessive connection
450451

451452
deliverSubchannelState(getSubChannel(servers.get(1)), CSI_CONNECTING);

xds/src/test/java/io/grpc/xds/WeightedRoundRobinLoadBalancerTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
import io.grpc.Status;
5353
import io.grpc.SynchronizationContext;
5454
import io.grpc.internal.FakeClock;
55-
import io.grpc.internal.GrpcUtil;
55+
import io.grpc.internal.PickFirstLoadBalancerProvider;
5656
import io.grpc.internal.TestUtils;
5757
import io.grpc.services.InternalCallMetricRecorder;
5858
import io.grpc.services.MetricReport;
@@ -569,7 +569,7 @@ weightedChild2.new OrcaReportListener(weightedConfig.errorUtilizationPenalty).on
569569
}
570570

571571
private boolean isEnabledHappyEyeballs() {
572-
return GrpcUtil.getFlag("GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS", true);
572+
return PickFirstLoadBalancerProvider.isEnabledHappyEyeballs();
573573
}
574574

575575
@Test

0 commit comments

Comments
 (0)