3
votes

I am trying to run the wordcount map-reduce example, refering https://support.pivotal.io/hc/en-us/articles/203355837-How-to-run-a-Map-Reduce-jar-using-Oozie-workflow.

I am using hadoop 2.2.0 in cluster setup

The problem is my oozie map-reduce job keeps on running. It does not give any error but its not completing successfully. There is no error message.Also there is no output directory created(which was suppose to happen).

Below is workflow.xml

    <workflow-app xmlns="uri:oozie:workflow:0.1" name="map-reduce-wf">
 <start to="mr-node"/>
 <action name="mr-node">
     <map-reduce>
       <job-tracker>${jobTracker}</job-tracker>
       <name-node>${nameNode}</name-node>
       <prepare>
         <delete path="${nameNode}/user/hadoop/${examplesRoot}/output-data/${outputDir}"/>
       </prepare>

   <configuration>
     <property>
       <name>mapred.mapper.new-api</name>
       <value>true</value>
     </property>
     <property>
       <name>mapred.reducer.new-api</name>
       <value>true</value>
     </property>
     <property>
       <name>mapred.job.queue.name</name>
       <value>${queueName}</value>
     </property>
     <property>
       <name>mapreduce.map.class</name>
       <value>org.apache.hadoop.examples.WordCount$TokenizerMapper</value>
     </property>
     <property>
       <name>mapreduce.reduce.class</name>
       <value>org.apache.hadoop.examples.WordCount$IntSumReducer</value>
     </property>
     <property>
       <name>mapreduce.combine.class</name>
       <value>org.apache.hadoop.examples.WordCount$IntSumReducer</value>
     </property>
     <property>
       <name>mapred.output.key.class</name>
       <value>org.apache.hadoop.io.Text</value>
     </property>
     <property>
       <name>mapred.output.value.class</name>
       <value>org.apache.hadoop.io.IntWritable</value>
     </property>
     <property>
       <name>mapred.input.dir</name>
       <value>/user/hadoop/${examplesRoot}/input-data/text</value>
     </property>
     <property>
       <name>mapred.output.dir</name>
       <value>/user/hadoop/${examplesRoot}/output-data/${outputDir}</value>
     </property>
   </configuration>
  </map-reduce>
  <ok to="end"/>
  <error to="fail"/>
 </action>
   <kill name="fail">
   <message>Map/Reduce failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
   </kill>
   <end name="end"/>
</workflow-app>

Job.properties

nameNode=hdfs://hadoopmaster:54310
jobTracker=localhost:54311
queueName=default
examplesRoot=examplesoozie

oozie.wf.application.path=${nameNode}/user/hadoop/${examplesRoot}/map-reduce
outputDir=map-reduce

The output of the job status is

Workflow Name : map-reduce-wf
App Path      : hdfs://hadoopmaster:54310/user/hadoop/examplesoozie/map-reduce
Status        : RUNNING
Run           : 0
User          : hadoopuser
Group         : -
Created       : 2014-10-26 19:52 GMT
Started       : 2014-10-26 19:52 GMT
Last Modified : 2014-10-26 19:52 GMT
Ended         : -
CoordAction ID: -

Actions
------------------------------------------------------------------------------------------------------------------------------------
ID                                                                            Status    Ext ID                 Ext Status Err Code 
------------------------------------------------------------------------------------------------------------------------------------
0000006-141026135258981-oozie-hado-W@:start:                                  OK        -                      OK         -        
------------------------------------------------------------------------------------------------------------------------------------
0000006-141026135258981-oozie-hado-W@mr-node                                  PREP      -                      -          -        
------------------------------------------------------------------------------------------------------------------------------------

Any help would be greatly appreciated.

1
I couldnt see your mapreduce jar defined in your workflow.xml. Could you check if u missed out the jar command?K S Nidhin
I meant is ur jar there in the lib folder ?and its class name is same that in the workflow.xmlK S Nidhin
@KSNidhin: Yes I have included the jar in the lib folder inside the map-reduce folder and also the class name is same as defined.abhi70

1 Answers

0
votes

In job.properties initialDataset should be 8 hours before jobStart (PST is GMT-8). You've set 2014-10-26 19:52 GMT for both.