[
https://issues.apache.org/jira/browse/CASSANDRA-5201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13862670#comment-13862670
]
Dmitriy V. Ryaboy commented on CASSANDRA-5201:
----------------------------------------------
The EB HadoopCompat is what we use in production at Twitter, and plan to keep
up to date in the foreseeable future. Glad you are finding it useful.
Maybe you can send that Reporter implementation as a pull request for
hadoop-compat? Seems generally applicable.
Thanks to this ping, I looked around and noticed that our Parquet project uses
a slightly different version of the same code -- we'll take a look and merge
things. Shouldn't change anything significantly for this patch.
Also note that Tom White has a handy findbugs plugin to look for Hadoop
incompatibility problems:
https://github.com/tomwhite/hadoop-incompatibility-findbugs-detector
Here's how you'd use it: https://github.com/Parquet/parquet-mr/pull/77/files
> 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: Dave Brosius
> Attachments: 5201_a.txt, hadoopCompat.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.1.5#6160)