I have set up application initialization requests for my Web API application such that when the application pool recycles certain endpoints are hit in order to load Entity Framework etc into the new process. I can see these requests succeeding in my API log:
636603400963248247T16P14184 26/04/2018 11:48:16.324 - Request: GET http://localhost/mywebapi/api/v2/warmup/contact/some-guid-value Host: localhost User-Agent: IIS Application Initialization Warmup Content-Length: 0
636603401013021709T8P14184 26/04/2018 11:48:30.297 (8995ms) - Response: 200 GET http://localhost/mywebapi/api/v2/warmup/contact/some-guid-value Content-Type: application/json; charset=utf-8
However, whenever the application pool recycles and these requests are made I get two event log entries as follows:
Error Message: An error occurred while communicating with the remote host. The error code is 0x80070032.
Exception Type: System.Web.HttpException
Exception Source: System.Web
Stack Trace: at System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(Int32 result, Boolean throwOnDisconnect) at System.Web.Hosting.IIS7WorkerRequest.ExplicitFlush() at System.Web.HttpResponse.Flush(Boolean finalFlush, Boolean async) at System.Web.HttpWriter.WriteFromStream(Byte[] data, Int32 offset, Int32 size) at System.IO.Stream.<>c.b__46_0(Object ) at System.Threading.Tasks.Task
1.InnerInvoke() at System.Threading.Tasks.Task.Execute() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.IO.Stream.EndWrite(IAsyncResult asyncResult) at System.Threading.Tasks.TaskFactory
1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action
1 endAction, Task`1 promise, Boolean requiresSynchronization) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.WebHost.HttpControllerHandler.d__15.MoveNext()Inner Exception: The request is not supported. (Exception from HRESULT: 0x80070032)
Exception Type: System.Runtime.InteropServices.COMException
Exception Source: System.Web
Stack Trace:
The timings of the event log entries seem to coincide with the times of the request and response of the final configured application initialization call.
This occurs when running the website on both a local Windows 10 dev box and Windows 2012 servers.
Does anyone know why these errors are being logged (given that the warmup requests seem to succeed) and how I can avoid them?
User contributions licensed under CC BY-SA 3.0