Originally sent this on this thread
http://www.mail-archive.com/user%40pig.apache.org/msg06085.html but can't
find out how to reply to the thread. (Buttons at the bottom weren't
working)
I'm getting an error instantiating HBaseStorage ONLY when run on a cluster.
Running in local mode with -x local does not produce the error and my pig
script runs successfully and the data is properly written to HBase. The
error I'm getting is below.
java.lang.RuntimeException: could not instantiate
'org.apache.pig.backend.hadoop.hbase.HBaseStorage' with arguments
'[attrs:values attrs:description attrs:trackId]'
at
org.apache.pig.impl.PigContext.instantiateFuncFromSpec(PigContext.java:502)
at
org.apache.pig.backend.hadoop.executionengine.physicalLayer.relationalOperators.POStore.getStoreFunc(POStore.java:218)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputCommitter.getCommitters(PigOutputCommitter.java:85)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputCommitter.<init>(PigOutputCommitter.java:68)
at
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.PigOutputFormat.getOutputCommitter(PigOutputFormat.java:278)
at org.apache.hadoop.mapred.Task.initialize(Task.java:511)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:306)
at org.apache.hadoop.mapred.Child$4.run(Child.java:270)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subje
The replies I got said to check the log file that was written out but
that only contained the following helpful output.
Pig Stack Trace
---------------
ERROR 2244: Job failed, hadoop does not return any error message
org.apache.pig.backend.executionengine.ExecException: ERROR 2244: Job
failed, hadoop does not return any error message
at
org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:119)
at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:172)
at
org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:90)
at org.apache.pig.Main.run(Main.java:396)
at org.apache.pig.Main.main(Main.java:107)
================================================================================
I have gotten it to work in another environment but can't figure out
for the life of me why it works in one, and not in another. Versions
are all the same etc. All I am doing is taking tuples containing 4
values and trying to write to HBase with the first one as the rowkey
and the other 3 as the values within the specified cf.
STORE values INTO 'contact_updates' USING
org.apache.pig.backend.hadoop.hbase.HBaseStorage('attrs:values
attrs:description attrs:trackId');