You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Prasanth Jayachandran (JIRA)" <ji...@apache.org> on 2015/08/15 06:36:45 UTC

[jira] [Updated] (HIVE-11572) Datanucleus loads Log4j1.x Logger from AppClassLoader

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

Prasanth Jayachandran updated HIVE-11572:
-----------------------------------------
    Summary: Datanucleus loads Log4j1.x Logger from AppClassLoader  (was: Datanucleus loads Log4j1.x Logger from its ClassLoader)

> Datanucleus loads Log4j1.x Logger from AppClassLoader
> -----------------------------------------------------
>
>                 Key: HIVE-11572
>                 URL: https://issues.apache.org/jira/browse/HIVE-11572
>             Project: Hive
>          Issue Type: Sub-task
>          Components: Logging
>    Affects Versions: 2.0.0
>            Reporter: Prasanth Jayachandran
>            Assignee: Prasanth Jayachandran
>             Fix For: 2.0.0
>
>         Attachments: HIVE-11572.patch
>
>
> As part of HIVE-11304, we moved from Log4j1.x to Log4j2. But DataNucleus log messages gets logged to console when launching the hive cli. The reason is DataNucleus is trying to load Log4j1.x Logger by traversing its class loader. Although we use log4j-1.2-api bridge we are loading log4j-1.2.16 jar that was pulled by ZooKeeper. We should make sure that there is no log4j-1.2.16 in datanucleus classloader hierarchy (classpath). 
> DataNucleus logger has this 
> {code}
> NucleusLogger.class.getClassLoader().loadClass("org.apache.log4j.Logger");
>             loggerClass = org.datanucleus.util.Log4JLogger.class;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)