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

Jason Lowe commented on HADOOP-10893:
-------------------------------------

The patch no longer applies after HADOOP-9902, and since that only went into 
trunk we'll need a separate patch for branch-2.

I tried to kick the tires on the latest patch but the client classloader never 
activated even though I set HADOOP_USE_CLIENT_CLASSLOADER=true.  That's because 
the following code will always return false:
{code}
  boolean useClientClassLoader() {
    return Boolean.getBoolean(System.getenv(HADOOP_USE_CLIENT_CLASSLOADER));
  }
{code}
getBoolean looks up the value of the specified system property, whereas 
parseBoolean tries to parse the given string as a boolean.

Other comments are minor or nits:

In hadoop-config.sh "The system classes are A comma-separated list" s/b "The 
system classes are a comma-separated list".

It would be nice if TestMain, TestSecond, TestThird were a bit less generically 
named since they are for a very specific test, e.g.: ClassLoaderCheckAppMain, 
ClassLoaderCheckAppSecond, ClassLoaderCheckAppThird, etc..  Not a must-fix 
though, rather thinking people may wonder what the names mean when they run 
across them in the source since TestMain sounds pretty generic.

> isolated classloader on the client side
> ---------------------------------------
>
>                 Key: HADOOP-10893
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10893
>             Project: Hadoop Common
>          Issue Type: New Feature
>          Components: util
>    Affects Versions: 2.4.0
>            Reporter: Sangjin Lee
>            Assignee: Sangjin Lee
>         Attachments: HADOOP-10893.patch, HADOOP-10893.patch, 
> HADOOP-10893.patch, HADOOP-10893.patch, HADOOP-10893.patch, 
> classloader-test.tar.gz
>
>
> We have the job classloader on the mapreduce tasks that run on the cluster. 
> It has a benefit of being able to isolate class space for user code and avoid 
> version clashes.
> Although it occurs less often, version clashes do occur on the client JVM. It 
> would be good to introduce an isolated classloader on the client side as well 
> to address this. A natural point to introduce this may be through RunJar, as 
> that's how most of hadoop jobs are run.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to