[XdsCoreE2ETest] Use wait_for_ready on RPCs to wait for xds enabled servers to be serving (#37942)

Fix flakes where RPCs fail due to the xds enabled server not being ready.

Sample flake - https://btx.cloud.google.com/invocations/74aca4dd-d5d6-43a4-89e3-08c1aed688e0/targets/%2F%2Ftest%2Fcpp%2Fend2end%2Fxds:xds_core_end2end_test@poller%3Dpoll;config=f78d0de70f525043d29a05fb7a78970999e04b7f8a87d8c4e974688bf7616998/log

Closes #37942

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/37942 from yashykt:FixXdsCoreE2ETet 4228e3c06b
PiperOrigin-RevId: 687006620
pull/37944/head
Yash Tibrewal 6 months ago committed by Copybara-Service
parent 5c5bf14fde
commit 29d3e58ddd
  1. 6
      test/cpp/end2end/xds/xds_core_end2end_test.cc

@ -1452,7 +1452,8 @@ TEST_P(XdsFederationLoadReportingTest, FederationMultipleLoadReportingTest) {
SetListenerAndRouteConfiguration(authority_balancer_.get(), listener,
new_route_config);
// Send kNumRpcsToDefaultBalancer RPCs to the current stub.
CheckRpcSendOk(DEBUG_LOCATION, kNumRpcsToDefaultBalancer);
CheckRpcSendOk(DEBUG_LOCATION, kNumRpcsToDefaultBalancer,
RpcOptions().set_wait_for_ready(true).set_timeout_ms(10000));
// Create second channel to new target uri.
auto channel2 =
CreateChannel(/*failover_timeout_ms=*/0, kNewServerName, kAuthority);
@ -1461,7 +1462,8 @@ TEST_P(XdsFederationLoadReportingTest, FederationMultipleLoadReportingTest) {
for (size_t i = 0; i < kNumRpcsToAuthorityBalancer; ++i) {
ClientContext context;
EchoRequest request;
RpcOptions().SetupRpc(&context, &request);
RpcOptions().set_wait_for_ready(true).set_timeout_ms(10000).SetupRpc(
&context, &request);
EchoResponse response;
grpc::Status status = stub2->Echo(&context, request, &response);
EXPECT_TRUE(status.ok()) << "code=" << status.error_code()

Loading…
Cancel
Save