[
https://issues.apache.org/jira/browse/CASSANDRA-5201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13918536#comment-13918536
]
Henning Kropp commented on CASSANDRA-5201:
------------------------------------------
I also was able to make this patch work with HDP 2.0. Nevertheless before this
ticket is closed I would like to make 2 suggestions:
1. Use maven classifiers for deployment. If this is used in a hadoop2 project
you don't want hadoop1 dependencies and vice versa. This approach is used by
Parquet, Avro and EB. For detailed discussion please read
[here|https://github.com/Parquet/parquet-mr/pull/32].
2. Change {{hadoop-core}} to {{hadoop-client}} dependency. {{hadoop-client}} is
the preferred dependency. Read
[here|http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH4/latest/CDH-Version-and-Packaging-Information/cdhvd_topic_8_1.html]
and the link above.
> Cassandra/Hadoop does not support current Hadoop releases
> ---------------------------------------------------------
>
> Key: CASSANDRA-5201
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5201
> Project: Cassandra
> Issue Type: Bug
> Components: Hadoop
> Affects Versions: 1.2.0
> Reporter: Brian Jeltema
> Assignee: Benjamin Coverston
> Fix For: 2.0.6
>
> Attachments: 5201_a.txt, hadoopCompat.patch,
> hadoopcompat-trunk.patch, progressable-fix.patch
>
>
> Using Hadoop 0.22.0 with Cassandra results in the stack trace below.
> It appears that version 0.21+ changed org.apache.hadoop.mapreduce.JobContext
> from a class to an interface.
> Exception in thread "main" java.lang.IncompatibleClassChangeError: Found
> interface org.apache.hadoop.mapreduce.JobContext, but class was expected
> at
> org.apache.cassandra.hadoop.ColumnFamilyInputFormat.getSplits(ColumnFamilyInputFormat.java:103)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.writeNewSplits(JobSubmitter.java:445)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.writeSplits(JobSubmitter.java:462)
> at
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:357)
> at org.apache.hadoop.mapreduce.Job$2.run(Job.java:1045)
> at org.apache.hadoop.mapreduce.Job$2.run(Job.java:1042)
> 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:1153)
> at org.apache.hadoop.mapreduce.Job.submit(Job.java:1042)
> at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1062)
> at MyHadoopApp.run(MyHadoopApp.java:163)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:69)
> at MyHadoopApp.main(MyHadoopApp.java:82)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:601)
> at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
--
This message was sent by Atlassian JIRA
(v6.2#6252)