Jumoo / Our.Umbraco.MaintenanceMode

Put Umbraco Into Maintenance Mode - While you do things
15 stars 9 forks source link

Exception during startup periodically #1

Open JohnBergman opened 6 years ago

JohnBergman commented 6 years ago

Here is the stack trace, I am not sure what causes it, and it happens only when the server has been idle and/or restarted and there are no umbraco w3wp processes running... and then, it doesn't happen every time.

[NullReferenceException: Object reference not set to an instance of an object.] Our.Umbraco.MaintenanceMode.Controllers.MaintenanceModeMvcController.Index(RenderModel model) +96 lambda_method(Closure , ControllerBase , Object[] ) +93 System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 parameters) +228 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters) +34 System.Web.Mvc.Async.AsyncControllerActionInvoker.b39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +38 System.Web.Mvc.Async.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) +70 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +41 System.Web.Mvc.Async.AsyncInvocationWithFilters.b3d() +71 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.<>cDisplayClass46.b3f() +385 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +42 System.Web.Mvc.Async.<>cDisplayClass2b.b1c() +38 System.Web.Mvc.Async.<>cDisplayClass21.b1e(IAsyncResult asyncResult) +185 System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +38 System.Web.Mvc.Controller.b1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +29 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +67 System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +52 System.Web.Mvc.Async.WrappedAsyncVoid1.CallEndDelegate(IAsyncResult asyncResult) +36 System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +38 System.Web.Mvc.MvcHandler.b5(IAsyncResult asyncResult, ProcessRequestState innerState) +43 System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +67 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +38 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +607 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +134

KevinJump commented 6 years ago

Humm, there is a call to the HttpContext in there somewhere (to get the current Umbraco Back-office user) maybe that is null (but we are in a MvC Request so that would also be odd!)....

Does this happen when Maintenance mode is on or off (or both) ? Do you have allow back office users through ticked?

KevinJump commented 6 years ago

I've put up a new version that checks the context isn't null and wraps the main calls, this means it shouldn't error on the site now - I am going to leave a site idle for a bit and see if i can trap any errors that are left.

but if you download the beta 2 package then you shouldn't see this on your site, any more

JohnBergman commented 6 years ago

Maintenance Mode is off in this case, (running on local dev). Allow backoffice users is checked.

I'll grab the update later today and let you know if it happens again.