You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexey Popov (JIRA)" <ji...@apache.org> on 2017/10/05 07:37:00 UTC

[jira] [Issue Comment Deleted] (IGNITE-6362) NPE in Log4J2Logger

     [ https://issues.apache.org/jira/browse/IGNITE-6362?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Popov updated IGNITE-6362:
---------------------------------
    Comment: was deleted

(was: 1. There was an issue inside Log4J2Logger.createConsoleLogger(). null was passed instead of LoggerContext during ad-hoc console logger creation via LoggerConfig.createLogger()
2. There were issues with unit tests:
Log4J2Logger holds context (static) for all logger instances and it is not expected to re-configure it on the fly. That was the issue to run tests one-by-one with different log configuration. A new method Log4J2Logger.cleanup() was implemented to terminate the Log4J logger context.)

> NPE in Log4J2Logger
> -------------------
>
>                 Key: IGNITE-6362
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6362
>             Project: Ignite
>          Issue Type: Bug
>          Components: general
>    Affects Versions: 2.1
>            Reporter: Valentin Kulichenko
>            Assignee: Alexey Popov
>             Fix For: 2.4
>
>
> When I start a node with {{Log4J2Logger}} configured and verbose mode ({{-DIGNITE_QUIET=false}}, it fails with NPE:
> {noformat}
> Caused by: java.lang.NullPointerException
> 	at org.apache.logging.log4j.core.config.LoggerConfig.<init>(LoggerConfig.java:145)
> 	at org.apache.logging.log4j.core.config.LoggerConfig.createLogger(LoggerConfig.java:523)
> 	at org.apache.ignite.logger.log4j2.Log4J2Logger.createConsoleLogger(Log4J2Logger.java:380)
> 	at org.apache.ignite.logger.log4j2.Log4J2Logger.addConsoleAppenderIfNeeded(Log4J2Logger.java:338)
> 	at org.apache.ignite.logger.log4j2.Log4J2Logger.<init>(Log4J2Logger.java:145)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> 	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142)
> 	... 34 more
> {noformat}
> This is caused by the fact that {{Log4J2Logger#createConsoleLogger}} method invokes {{LoggerConfig.createLogger}} providing {{null}} as {{Configuration}} object, which unconditionally causes NPE. Need to provide some default configuration instead.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)