I am using AVRO-493 patch to use Avro with MapReduce. When the job gets
submitted the following exception is thrown. AvroWrapper is used as key (map
and output) and NullWritable as value. It looks that while creating new
instance for MapOutputKey, its trying to call "init" method and throws
exception when it does not get it.
I looked through the code and it looks that zero arguments constructor is being
called. I could not see call to "init" method being done from
ReflectionUtils.newInstance. any help, pointers are greatly appreciated. I am
using Hadoop 0.20.1
2010-05-28 14:44:59,703 INFO org.apache.hadoop.mapred.FileInputFormat: Total
input paths to process : 1
2010-05-28 14:45:00,203 INFO org.apache.hadoop.mapred.JobClient: Running job:
job_local_0001
2010-05-28 14:45:00,250 INFO org.apache.hadoop.mapred.FileInputFormat: Total
input paths to process : 1
2010-05-28 14:45:00,406 INFO org.apache.hadoop.mapred.MapTask: numReduceTasks: 0
2010-05-28 14:45:00,484 WARN org.apache.hadoop.mapred.LocalJobRunner:
job_local_0001
java.lang.RuntimeException: Error in configuring object
at
org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:93)
at
org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
at
org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:354)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:307)
at
org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:176)
Caused by: java.lang.reflect.InvocationTargetException
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.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
... 5 more
Caused by: java.lang.RuntimeException: java.lang.NoSuchMethodException:
org.apache.avro.mapred.AvroWrapper.<init>()
at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:115)
at
com.ibm.jaql.lang.expr.hadoop.MapReduceBaseExpr$MapEval.configure(MapReduceBaseExpr.java:388)
... 10 more
Caused by: java.lang.NoSuchMethodException:
org.apache.avro.mapred.AvroWrapper.<init>()
at java.lang.Class.getConstructor0(Class.java:2706)
at java.lang.Class.getDeclaredConstructor(Class.java:1985)
at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:109)
... 11 more
2010-05-28 14:45:01,203 INFO org.apache.hadoop.mapred.JobClient: map 0% reduce
0%
2010-05-28 14:45:01,203 INFO org.apache.hadoop.mapred.JobClient: Job complete:
job_local_0001
2010-05-28 14:45:01,203 INFO org.apache.hadoop.mapred.JobClient: Counters: 0
Regards,
Jaydeep
DISCLAIMER
==========
This e-mail may contain privileged and confidential information which is the
property of Persistent Systems Ltd. It is intended only for the use of the
individual or entity to which it is addressed. If you are not the intended
recipient, you are not authorized to read, retain, copy, print, distribute or
use this message. If you have received this communication in error, please
notify the sender and delete all copies of this message. Persistent Systems
Ltd. does not accept any liability for virus infected mails.