HttpStreamPool: Add debug instrumentation
There seems a case where we don't set `most_recent_tcp_error_` after all TCP attempts are failed. Reported minidumps don't contain enough information to identify the cause. This CL adds some base::debug::Alias to identify the cause. Bug: 403373872 Change-Id: I7161d2e8703c58d6640b67cf638157d4481447e6 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6395996 Reviewed-by: Nidhi Jaju <nidhijaju@chromium.org> Commit-Queue: Kenichi Ishibashi <bashi@chromium.org> Cr-Commit-Position: refs/heads/main@{#1437943}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
10cf7adfe5
commit
80a23f60da
@ -1322,7 +1322,19 @@ void HttpStreamPool::AttemptManager::MaybeAttemptConnection(
|
||||
TcpBasedAttemptState::kAllEndpointsFailed &&
|
||||
!quic_task_) {
|
||||
// Tried all endpoints.
|
||||
DCHECK(most_recent_tcp_error_.has_value());
|
||||
// TODO(crbug.com/403373872): Replace the following `if` with CHECK()
|
||||
// once we identify the root cause.
|
||||
if (!most_recent_tcp_error_.has_value()) {
|
||||
const bool is_svcb_optional = IsSvcbOptional();
|
||||
ConnectionAttempts connection_attempts = connection_attempts_;
|
||||
std::vector<ServiceEndpoint> endpoints =
|
||||
service_endpoint_request_->GetEndpointResults();
|
||||
base::debug::Alias(&is_svcb_optional);
|
||||
base::debug::Alias(&connection_attempts_);
|
||||
base::debug::Alias(&endpoints);
|
||||
DEBUG_ALIAS_FOR_GURL(url_buf, stream_key().destination().GetURL());
|
||||
NOTREACHED();
|
||||
}
|
||||
HandleFinalError(*most_recent_tcp_error_);
|
||||
}
|
||||
return;
|
||||
|
Reference in New Issue
Block a user