[ 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)