We have an Umbraco 6.1.6 site with about 8000 nodes most of which utilize uHidesy.
Intermittently when attempting to load a content node an editor will be presented with this error. Any thoughts?
2013-10-11 08:31:07,352 [15] ERROR Umbraco.Core.UmbracoApplicationBase - [Thread 75] An unhandled exception occurred
System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IO.IOException: The process cannot access the file 'C:\inetpub\wwwroot\UmbWWW-616\usercontrols\uHidesy\settings.json' because it is being used by another process.
at uHidesy.Umbraco.usercontrols.uHidesy.uHidesy.SaveSettings() in D:\_PROJECTS\uHidesy - Property Hider\Branches\1.13_noDesc\Umbraco.Web\usercontrols\uHidesy\uHidesy.ascx.cs:line 175
at uHidesy.Umbraco.usercontrols.uHidesy.uHidesy.OnLoad(EventArgs e) in D:\_PROJECTS\uHidesy - Property Hider\Branches\1.13_noDesc\Umbraco.Web\usercontrols\uHidesy\uHidesy.ascx.cs:line 38
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Here's a slightly different one that shows up as well:
2013-10-11 15:38:45,829 [18] ERROR Umbraco.Core.UmbracoApplicationBase - [Thread 117] An unhandled exception occurred
System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IO.IOException: The process cannot access the file 'C:\inetpub\wwwroot\UmbWWW-616\usercontrols\uHidesy\settings.json' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize)
at System.IO.StreamReader..ctor(String path, Encoding encoding)
at System.IO.File.InternalReadAllText(String path, Encoding encoding)
at uHidesy.Umbraco.usercontrols.uHidesy.uHidesy.LoadSettings() in D:\_PROJECTS\uHidesy - Property Hider\Branches\1.13_noDesc\Umbraco.Web\usercontrols\uHidesy\uHidesy.ascx.cs:line 69
at uHidesy.Umbraco.usercontrols.uHidesy.uHidesy.OnLoad(EventArgs e) in D:\_PROJECTS\uHidesy - Property Hider\Branches\1.13_noDesc\Umbraco.Web\usercontrols\uHidesy\uHidesy.ascx.cs:line 44
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
We're currently not doing any load balancing. The error seems to only appear when there's a significant number of editors working. How would you go about preventing file locking?
Ah. I'm not sure about this file locking issue. The datatype just reads and writes to the file. Perhaps what you could do is add an if statement to the source which checks if a User is an admin. If they are then just return. That will mean the file will not be locked by writes.
uHidesy Crashing
We have an Umbraco 6.1.6 site with about 8000 nodes most of which utilize uHidesy.
Intermittently when attempting to load a content node an editor will be presented with this error. Any thoughts?
Here's a slightly different one that shows up as well:
You're not on a SAN are you?
Yes. We're running on a virtual server with a SAN. It's running on the high-performance disk groups.
If you're on distributed servers, there may be a file locking issue with yoru load balancing.
We're currently not doing any load balancing. The error seems to only appear when there's a significant number of editors working. How would you go about preventing file locking?
Ah. I'm not sure about this file locking issue. The datatype just reads and writes to the file. Perhaps what you could do is add an if statement to the source which checks if a User is an admin. If they are then just return. That will mean the file will not be locked by writes.
Hmm...Interesting. I'll give that a shot.
is working on a reply...