logging-log4net-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Calin Pavel (JIRA)" <j...@apache.org>
Subject [jira] [Created] (LOG4NET-443) Logger.CallAppenders
Date Tue, 21 Oct 2014 08:33:33 GMT
Calin Pavel created LOG4NET-443:

             Summary: Logger.CallAppenders
                 Key: LOG4NET-443
                 URL: https://issues.apache.org/jira/browse/LOG4NET-443
             Project: Log4net
          Issue Type: Bug
    Affects Versions: 1.2.13
         Environment: Windows service implemented with .NET 4.5  using Log4Net 1.2.13 on Windows
2008 R2
            Reporter: Calin Pavel
            Priority: Critical

I do have an .NET application (Windows Service) that collects data from a lot of sources (DBs,
log files, machines event logs, ...) and uses Log4Net to log details of the actions / execution.
 As expected, I'm using a high number of threads to collect data, threads that are writing
logs in some files (RollingFileAppenderer).

Lately it happens that the entire application is BLOCKED because all threads were trying to
acquire a read lock, like in the stack trace:
000000001ac3d998 00000000774715fa [HelperMethodFrame: 000000001ac3d998] System.Threading.Thread.SleepInternal(Int32)
000000001ac3da90 000007fef747b5e9 System.Threading.Thread.Sleep(Int32)
000000001ac3dac0 000007fef5fb9631 System.Threading.ReaderWriterLockSlim.EnterMyLockSpin()
000000001ac3db90 000007fef5cd297e System.Threading.ReaderWriterLockSlim.TryEnterReadLockCore(TimeoutTracker)
000000001ac3dbf0 000007fef5cd28fa System.Threading.ReaderWriterLockSlim.TryEnterReadLock(TimeoutTracker)
000000001ac3dc40 000007fe98fb4efd log4net.Repository.Hierarchy.Logger.CallAppenders(log4net.Core.LoggingEvent)
000000001ac3dcc0 000007fe98fb4907 log4net.Repository.Hierarchy.Logger.Log(System.Type, log4net.Core.Level,
System.Object, System.Exception)
000000001ac3dd30 000007fe98fb47f9 log4net.Core.LogImpl.Info(System.Object)  

It's important to mention that my threads have a timeout, and if they do not finish the job
in the given interval they are ABORTED.

Searching for a solution, I found a possible explanation of application hanging here: http://chabster.blogspot.ro/2013/07/a-story-of-orphaned-readerwriterlockslim.html

This message was sent by Atlassian JIRA

View raw message