You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Shawn Weeks (JIRA)" <ji...@apache.org> on 2019/03/08 22:28:00 UTC

[jira] [Commented] (HIVE-21409) Initial SessionState ClassLoader Reused For Subsequent Sessions

    [ https://issues.apache.org/jira/browse/HIVE-21409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16788350#comment-16788350 ] 

Shawn Weeks commented on HIVE-21409:
------------------------------------

I've changed registerJars in SessionState to get the classLoader from SessionState.getConf().getClassLoader() instead of the thread context and it seems to have cleared up the class loader pollution. Not 100% sure what it's doing or why the thread context at that point doesn't already have the session state's class loader.

> Initial SessionState ClassLoader Reused For Subsequent Sessions
> ---------------------------------------------------------------
>
>                 Key: HIVE-21409
>                 URL: https://issues.apache.org/jira/browse/HIVE-21409
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 1.2.1
>            Reporter: Shawn Weeks
>            Priority: Minor
>         Attachments: create_class.sql, run.sql, setup.sql
>
>
> It appears that the first ClassLoader attached to a SessionState Static Instance is being reused as the parent for all future sessions. This causes any libraries added to the class path on the initial session to be added to future sessions. It also appears that further sessions may be adding jars to this initial ClassLoader as well leading to the class path getting more and more polluted. This occurring on a build including HIVE-11878. I've included some examples that greatly exaggerate the problem.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)