Intermittent Connection Failures to dotnet.microsoft.com

splatteredbits's Avatar

splatteredbits

10 Jun, 2022 05:19 PM

I'm getting intermittent connection problems in my builds connecting to https://dotnet.microsoft.com.

Here's a build where it happened: https://ci.appveyor.com/project/WebMD-Health-Services/whiskey/build...

This may be related to https://help.appveyor.com/discussions/problems/32190-intermittent-p... .

Here's the PowerShell error:

System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner 
                        exception.
                         ---> System.IO.IOException: Unable to read data from the transport connection: An existing 
                        connection was forcibly closed by the remote host..
                         ---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed 
                        by the remote host.
                           --- End of inner exception stack trace ---
                           at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError 
                        error, CancellationToken cancellationToken)
                           at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IV
                        alueTaskSource<System.Int32>.GetResult(Int16 token)
                           at System.Net.Security.SslStream.<FillHandshakeBufferAsync>g__InternalFillHandshakeBufferAsy
                        nc|187_0[TIOAdapter](TIOAdapter adap, ValueTask`1 task, Int32 minSize)
                           at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
                           at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, 
                        Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
                           at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions 
                        sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken 
                        cancellationToken)
                           --- End of inner exception stack trace ---
                           at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions 
                        sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken 
                        cancellationToken)
                           at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean 
                        async, CancellationToken cancellationToken)
                           at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage 
                        request, Boolean async, CancellationToken cancellationToken)
                           at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)
                           at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(C
                        ancellationToken cancellationToken)
                           at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, 
                        Boolean async, CancellationToken cancellationToken)
                           at 
                        System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage 
                        request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
                           at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, 
                        CancellationToken cancellationToken)
                           at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, 
                        HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, 
                        CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
                           at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.GetResponse(HttpClient client, 
                        HttpRequestMessage request, Boolean keepAuthorization)
                           at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.ProcessRecord()
TargetObject          : Method: GET, RequestUri: 
                        'https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1', Version: 1.1, 
                        Content: <null>, Headers:
                        {
                          User-Agent: Mozilla/5.0
                          User-Agent: (Windows NT 10.0; Microsoft Windows 10.0.17763; en-US)
                          User-Agent: PowerShell/7.2.4
                        }
  1. Support Staff 1 Posted by Feodor Fitsner on 10 Jun, 2022 05:45 PM

    Feodor Fitsner's Avatar

    What URL are you downloading from https://dotnet.microsoft.com?

  2. 2 Posted by splatteredbits on 10 Jun, 2022 06:01 PM

    splatteredbits's Avatar
  3. Support Staff 3 Posted by Feodor Fitsner on 10 Jun, 2022 06:23 PM

    Feodor Fitsner's Avatar

    I mean what is the exact URL of the resource on that site you are downloading in the build?

  4. 4 Posted by splatteredbits on 10 Jun, 2022 06:27 PM

    splatteredbits's Avatar
  5. Support Staff 5 Posted by Feodor Fitsner on 10 Jun, 2022 07:12 PM

    Feodor Fitsner's Avatar

    While we are trying to pin the issue to specific AppVeyor servers (if it's server-specific) could you please add to your build the following command to see what IP that endpoint is resolved:

    init:
    - ping -n 1 dotnet.microsoft.com
    
  6. Support Staff 6 Posted by Feodor Fitsner on 10 Jun, 2022 07:52 PM

    Feodor Fitsner's Avatar

    We did some adjustments to a few servers. Let me know if it's better now.
    And keep watching if we could correlate failing builds with dotnet.microsoft.com IP address.

  7. Feodor Fitsner closed this discussion on 10 Aug, 2022 09:01 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac