[
https://issues.apache.org/jira/browse/ACCUMULO-3100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14126365#comment-14126365
]
Josh Elser commented on ACCUMULO-3100:
--------------------------------------
bq. the problem appears to be introduced in a not-yet-released version of
Hadoop, there's still a chance to patch it before it is released.
Not entirely sure if I follow you. The problem has been there, AFAICT, through
the entire Hadoop-2 line. We just haven't noticed it because we changed guava
for 1.6.0 and the use of LimitInputStream from Guava doesn't often hit the
client API. In this specific case, it was from MAPREDUCE-5890 which is a part
of the larger encrypted fs feature. It also shows itself when the HDFS server
code (some Protobuf FS Image helper class) gets loaded when using
MiniDfsCluster.
I haven't seen anything about usage of Guava classes that have been removed in
newer versions nor know what their opinion on the subject would be. That would
probably be a good question to ask if for nothing else than to make sure that
we make an aligned decision ourselves later.
> Accumulo fails to test against recent Hadoop 2.6.0-SNAPSHOT
> -----------------------------------------------------------
>
> Key: ACCUMULO-3100
> URL: https://issues.apache.org/jira/browse/ACCUMULO-3100
> Project: Accumulo
> Issue Type: Bug
> Components: test
> Affects Versions: 1.6.0
> Reporter: Josh Elser
> Assignee: Josh Elser
> Fix For: 1.6.1, 1.7.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> JobSubmitted makes a call out to CryptoUtils to test for encrypted shuffle
> support that was recently added to branch-2 (specifically HDFS-6134 and
> HADOOP-10150 looking at the blame)
> {noformat}
> java.lang.NoClassDefFoundError: com/google/common/io/LimitInputStream
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:380)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1294)
> at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1291)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:415)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1291)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1312)
> {noformat}
> Because of this, we can't run the test because we can't load LimitInputStream
> because we depend on Guava 15.0 which doesn't contain LimitInputStream.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)