[
https://issues.apache.org/jira/browse/HADOOP-11211?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14217579#comment-14217579
]
Yitong Zhou commented on HADOOP-11211:
--------------------------------------
Hi [~jira.shegalov]:
Compared to MAPREDUCE-6128.v05.patch, it does seem like I have some old stuff
in mapred-default.xml:
{code}
// Mine:
- in '.' (period) are treated as package names, and names starting with a '-'
- are treated as negative matches.
+ in '.' (period) are treated as package names, names containing '$' are
treated
+ as nested classses, and names starting with a '-' are treated as negative
matches.
// MAPREDUCE-6128.v05.patch
- in '.' (period) are treated as package names, and names starting with a '-'
+ in '.' (period) are treated as package names, names ending with a '$'
+ are treated as inner classes, and names starting with a '-'
{code}
Somehow my dev-box's connection with the apache git server
(git://git.apache.org/hadoop.git) is jammed, and I cannot get a response from
it after a long wait; so I rebased my repo against the github trunk. I'm pretty
the github trunk does not contain MAPREDUCE-6128.v05.patch changes in
mapred-default.xml. Could that be a problem? Should I try fix the connection
with apache server and rebase against that git?
But is that patch already submitted into the trunk? The JIRA ticket is still
open.
> mapreduce.job.classloader.system.classes property behaves differently when
> the exclusion and inclusion order is different
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: HADOOP-11211
> URL: https://issues.apache.org/jira/browse/HADOOP-11211
> Project: Hadoop Common
> Issue Type: Bug
> Affects Versions: hudson
> Reporter: Yitong Zhou
> Assignee: Yitong Zhou
> Fix For: hudson
>
> Attachments: HADOOP-11211.patch
>
>
> If we want to include package foo.bar.* but exclude all sub packages named
> foo.bar.tar.* in system classes, configuring
> "mapreduce.job.classloader.system.classes=foo.bar.,-foo.bar.tar." won't work.
> foo.bar.tar will still be pulled in. But if we change the order:
> "mapreduce.job.classloader.system.classes=-foo.bar.tar.,foo.bar.", then it
> will work.
> This bug is due to the implementation of ApplicationClassLoaser#isSystemClass
> in hadoop-common, where we simply return the matching result immediately when
> the class name hits the first match (either positive or negative).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)