Edit: As at 5:30am GMT the error doesn't occur everytime.
However, the replays that failed before (see below) can't be uploaded
until they are renamed.
And some of them still can't be uploaded even after renaming (track: OK Fred)
It appears that the replay file made it to the server file system but then the time didn't make it to the database and the write timed-out. So the replay file cant be sent again but the track page does not show it.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
See below for original bug report
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Hi admins (copy of error below) after a timeout error upon replay upload an error is displayed and then the replay cannot be uploaded again and despite the "file already exists" error the replay is not displayed on the track page.
This happened for me at approx 12:15am GMT Sat 14/12/2013 on both tracks "OK Fred" and "B12".
Error text...
Stack trace for the exception above.
at System.ManiaExchange.Database.MPXAccess.ExecuteNonQuery(SqlCommand cmd, Boolean transaction)
at System.ManiaExchange.Database.MPXAccess.ExecuteNonQuery(SqlCommand cmd)
at TmExchange.Core.Database.DataClients.ReplayClient.InsertReplay(Replay replay, MXDBInfo fileInfo)
at TmExchange.Controllers.UploadController.Replay_Files(Int64 trackID, HttpPostedFileBase replay_file)
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.b__12()
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)