Looks like you compiled for hadoop 0.20.203, which had a different API (that's why we have to use Munge). Can you try recompiling with the hadoop_2.0.0 profile?
From: Johnny Zhang <xiao...@cloudera.com<mailto:xiao...@cloudera.com>> Reply-To: "user@giraph.apache.org<mailto:user@giraph.apache.org>" <user@giraph.apache.org<mailto:user@giraph.apache.org>> Date: Monday, August 20, 2012 7:31 PM To: "user@giraph.apache.org<mailto:user@giraph.apache.org>" <user@giraph.apache.org<mailto:user@giraph.apache.org>> Subject: cannot run Giraph trunk with Hadoop 2.0.0-alpha Hi, all: I am trying to run Giraph trunk with Hadoop 2.0.0-alpha. I am getting below error when I run a page rank example job with 3 workers. # hadoop jar target/giraph-0.2-SNAPSHOT-for-hadoop-0.20.203.0-jar-with-dependencies.jar org.apache.giraph.benchmark.PageRankBenchmark -e 1 -s 3 -v -V 50000000 -w 3 12/08/20 11:10:38 WARN mapred.JobConf: The variable mapred.child.ulimit is no longer used. 12/08/20 11:10:38 INFO benchmark.PageRankBenchmark: Using class org.apache.giraph.benchmark.PageRankBenchmark 12/08/20 11:10:38 WARN conf.Configuration: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address 12/08/20 11:10:38 WARN conf.Configuration: mapred.job.map.memory.mb is deprecated. Instead, use mapreduce.map.memory.mb 12/08/20 11:10:38 WARN conf.Configuration: mapred.job.reduce.memory.mb is deprecated. Instead, use mapreduce.reduce.memory.mb 12/08/20 11:10:38 WARN conf.Configuration: mapred.map.tasks.speculative.execution is deprecated. Instead, use mapreduce.map.speculative Exception in thread "main" java.lang.IncompatibleClassChangeError: Found interface org.apache.hadoop.mapreduce.JobContext, but class was expected at org.apache.giraph.bsp.BspOutputFormat.checkOutputSpecs(BspOutputFormat.java:43) at org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs(JobSubmitter.java:411) at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:326) at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1226) at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1223) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1232) at org.apache.hadoop.mapreduce.Job.submit(Job.java:1223) at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1244) at org.apache.giraph.graph.GiraphJob.run(GiraphJob.java:714) at org.apache.giraph.benchmark.PageRankBenchmark.run(PageRankBenchmark.java:150) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) at org.apache.giraph.benchmark.PageRankBenchmark.main(PageRankBenchmark.java:164) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.hadoop.util.RunJar.main(RunJar.java:208) My $HADOOP_MAPRED_HOME and $JAVA_HOME is set up correctly, could anyone tell me if I need to setup anything else? Thanks a lot. Johnny