[jboss-jira] [JBoss JIRA] (LOGMGR-143) NullPointer in JbossAppenderHandler.doPublish() degrades performance

David Frank (JIRA) issues at jboss.org
Mon Nov 7 10:28:01 EST 2016


David Frank created LOGMGR-143:
----------------------------------

             Summary: NullPointer in JbossAppenderHandler.doPublish() degrades performance
                 Key: LOGMGR-143
                 URL: https://issues.jboss.org/browse/LOGMGR-143
             Project: JBoss Log Manager
          Issue Type: Bug
          Components: core
    Affects Versions: 1.1.0.GA
         Environment: Windows 7 x64
WildFly 8
Java 8.0_102
            Reporter: David Frank


I don't have code I can send to reproduce this, but if the issue doesn't show up readily, I can try to create it.

I noticed while doing some performance monitoring of WildFly with JVisualVM, that JBossAppenderHandler.doPublish() kept popping up in the top 5 for Self Time (CPU).  This is the method:

{code:java}
36     @Override
37     protected void More ...doPublish(final ExtLogRecord record) {
38         final LoggingEvent event = new LoggingEvent(record, JBossLogManagerFacade.getLogger(logger));
39         final List<Appender> appenders = getAppenderList(logger);
40         for (Appender appender : appenders) {
41             if (new JBossFilterWrapper(appender.getFilter(), true).isLoggable(record)) {
42                 appender.doAppend(event);
43             }
44         }
45     }
{code}

After attaching the Eclipse debugger to it, I found the following:
1) The logger's name was ""
2) The appender list returend from getAppendersList(logger) had one element in it, and it was null. So the for loop following it would throw the null pointer.

I put a quick hack in place to see how much of an impact this was having, basically putting a if(appender != null) check within the for loop.  My average CPU load for WildFly dropped from about 173% to 130%.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the jboss-jira mailing list