I'm using log4net 1.2.9 and got these uncaught exceptions thrown from my application causing it to crash this past weekend:
System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. I am using log4net with an asp.net 1.1 web service, and am writing entries to the log for every request. This is on a windows 2003 server, using iis6, and web gardening is turned on, so multiple instances of w3wp.exe are running and processing requests. Here is the full stack trace: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.IndexOutOfRangeException: Probable I/O race condition detected while copying memory. The I/O package is not thread safe by default. In multithreaded applications, a stream must be accessed in a thread-safe way, such as a thread-safe wrapper returned by TextReader's or TextWriter's Synchronized methods. This also applies to classes like StreamWriter and StreamReader. at System.Buffer.InternalBlockCopy(Array src, Int32 srcOffset, Array dst, Int32 dstOffset, Int32 count) at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count) at System.IO.TextWriter.WriteLine(String value) at System.IO.SyncTextWriter.WriteLine(String value) at log4net.Util.LogLog.Error(String message, Exception exception) at log4net.Util.AppenderAttachedImpl.AppendLoopOnAppenders(LoggingEvent loggingEvent) at log4net.Repository.Hierarchy.Logger.CallAppenders(LoggingEvent loggingEvent) at log4net.Repository.Hierarchy.Logger.ForcedLog(Type callerStackBoundaryDeclaringType, Level level, Object message, Exception exception) at log4net.Repository.Hierarchy.Logger.Log(Type callerStackBoundaryDeclaringType, Level level, Object message, Exception exception) at log4net.Core.LogImpl.Error(Object message) at My.Online.App.Logger.Error(String msg) at My.Online.App.ComcastMSOOffersService..ctor() --- End of inner exception stack trace --- Thanks, Michelle Weber
