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

Reply via email to