Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-6511

Async blocks execution if serious poblems happens with underlying appenders

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • EAP_EWP 5.1.0
    • EAP_EWP 5.1.0
    • Other
    • None
    • NEW

      This is only for knowledge base, as we hit this issue in a JBoss instance internally.

      Under some circumstances, the Async appender can block the execution thread of the caller, causing the application to reach a deadlock-like state.

      This happens when the underlying appender experiences some problems and cannot "accept" any more logs. The Async, then, keeps those logs in a buffer, whose limit is 128 entries. In the default configuration, once this limit is reached, Async will not proceed without the buffer being cleared, not returning to the caller, effectively blocking the main thread.

      This behaviour can be changed by setting the property "Blocking" to false, but that means that log messages can be lost, as the buffer won't accept any more messages (in fact, it'll accept, summarize and discard). The buffer can also be increased from the default 128 by setting the property BufferSize to a higher value.

              jpkroehling@redhat.com Juraci Paixão Kröhling (Inactive)
              jpkroehling@redhat.com Juraci Paixão Kröhling (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: