Skip to content

Commit

Permalink
[XdsEnd2EndTest] Use Custom RPC Options for each test to reduce test …
Browse files Browse the repository at this point in the history
…run times (grpc#37679)

Also, add status expectations for tests where we expect failures.

Closes grpc#37679

COPYBARA_INTEGRATE_REVIEW=grpc#37679 from yashykt:CustomRpcOptions 75272d5
PiperOrigin-RevId: 674042498
  • Loading branch information
yashykt authored and copybara-github committed Sep 12, 2024
1 parent a38034d commit cdb22f1
Show file tree
Hide file tree
Showing 4 changed files with 345 additions and 189 deletions.
17 changes: 9 additions & 8 deletions src/core/server/xds_server_config_fetcher.cc
Original file line number Diff line number Diff line change
Expand Up @@ -677,8 +677,16 @@ void XdsServerConfigFetcher::ListenerWatcher::
// It should get cleaned up eventually. Ignore this update.
return;
}
bool first_good_update = filter_chain_match_manager_ == nullptr;
// Promote the pending FilterChainMatchManager
filter_chain_match_manager_ = std::move(pending_filter_chain_match_manager_);
// TODO(yashykt): Right now, the server_config_watcher_ does not invoke
// XdsServerConfigFetcher while holding a lock, but that might change in the
// future in which case we would want to execute this update outside the
// critical region through a WorkSerializer similar to XdsClient.
server_config_watcher_->UpdateConnectionManager(filter_chain_match_manager_);
// Let the logger know about the update if there was no previous good update.
if (filter_chain_match_manager_ == nullptr) {
if (first_good_update) {
if (serving_status_notifier_.on_serving_status_update != nullptr) {
serving_status_notifier_.on_serving_status_update(
serving_status_notifier_.user_data, listening_address_.c_str(),
Expand All @@ -688,13 +696,6 @@ void XdsServerConfigFetcher::ListenerWatcher::
<< listening_address_;
}
}
// Promote the pending FilterChainMatchManager
filter_chain_match_manager_ = std::move(pending_filter_chain_match_manager_);
// TODO(yashykt): Right now, the server_config_watcher_ does not invoke
// XdsServerConfigFetcher while holding a lock, but that might change in the
// future in which case we would want to execute this update outside the
// critical region through a WorkSerializer similar to XdsClient.
server_config_watcher_->UpdateConnectionManager(filter_chain_match_manager_);
}

//
Expand Down
Loading

0 comments on commit cdb22f1

Please sign in to comment.