I was running oozie jobs and came across strange behavior where sometimes a Pig latin job gets successfully executed and other times it fails with below exception:
2015-11-02 14:31:20,241 FATAL [main] org.apache.hadoop.mapred.YarnChild: Error running child : java.lang.NoSuchFieldError: HIVE_LAZYSIMPLE_EXTENDED_BOOLEAN_LITERAL
at org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe.initSerdeParams(LazySimpleSerDe.java:318)
at org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe.initialize(LazySimpleSerDe.java:195)
at org.apache.hcatalog.mapreduce.InternalUtil.initializeDeserializer(InternalUtil.java:155)
at org.apache.hcatalog.mapreduce.HCatRecordReader.createDeserializer(HCatRecordReader.java:127)
at org.apache.hcatalog.mapreduce.HCatRecordReader.initialize(HCatRecordReader.java:92)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigRecordReader.initialize(PigRecordReader.java:181)
at org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.initialize(MapTask.java:524)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:762)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:339)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:162)
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:1491)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:157)
This error was resulting due to 2 types of version jars kept in oozie share lib. So, once which gets loaded first gets the priority. Firstly like in above case I was getting this error from org/apache/hadoop/hive/conf/HiveConf.java
This file is present in "hive-exec-0.13.0.jar" and "hive-common-0.14.0.jar".
Also, HIVE_LAZYSIMPLE_EXTENDED_BOOLEAN_LITERAL variable is present with 0.14.0
Comments
Post a Comment