hbase-protocol.jar is added to path. I can see that in spark-UI of the running application.
phoenix-core version is 4.3.0 and phoenix-server.jar version is 4.2.3. On Mon, Mar 16, 2015 at 2:15 PM, Fulin Sun <[email protected]> wrote: > Hi, > Did you add hbase-protocol.jar into your application classpath? > Do you find some version incompatibility between your client and server? > > Thanks, > Sun. > > ------------------------------ > ------------------------------ > > CertusNet > > > *From:* junaid khalid <[email protected]> > *Date:* 2015-03-16 16:50 > *To:* user <[email protected]> > *Subject:* Fwd: java.lang.IllegalAccessError: > com/google/protobuf/HBaseZeroCopyByteString > i have a spark program in which it connects to hbase using phoenix and > upserts record in hbase table. It runs fine when run through spark-submit > command and work as expected. But when I run it through oozie, it gives > following exception. While running submitting through oozie, if spark is > run in local mode the program works fine. > > I am using spark 1.2, phoenix 4.2.3 and hbase 0.98.6-cdh5.3.1. > > --- > 15/03/16 13:13:18 WARN HTable: Error calling coprocessor service > org.apache.phoenix.coprocessor.generated.MetaDataProtos$MetaDataService for > row \x00\x00TABLE55068E2AED4AB9B607BBBE49 > java.util.concurrent.ExecutionException: java.lang.IllegalAccessError: > com/google/protobuf/HBaseZeroCopyByteString > at java.util.concurrent.FutureTask.report(FutureTask.java:122) > at java.util.concurrent.FutureTask.get(FutureTask.java:188) > at > org.apache.hadoop.hbase.client.HTable.coprocessorService(HTable.java:1583) > at > org.apache.hadoop.hbase.client.HTable.coprocessorService(HTable.java:1540) > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.metaDataCoprocessorExec(ConnectionQueryServicesImpl.java:1006) > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.getTable(ConnectionQueryServicesImpl.java:1257) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:348) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:309) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:305) > at > org.apache.phoenix.compile.FromCompiler$BaseColumnResolver.createTableRef(FromCompiler.java:352) > at > org.apache.phoenix.compile.FromCompiler$SingleTableColumnResolver.<init>(FromCompiler.java:237) > at > org.apache.phoenix.compile.FromCompiler$SingleTableColumnResolver.<init>(FromCompiler.java:231) > at > org.apache.phoenix.compile.FromCompiler.getResolverForMutation(FromCompiler.java:207) > at > org.apache.phoenix.compile.UpsertCompiler.compile(UpsertCompiler.java:248) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:487) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:478) > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:279) > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:272) > at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) > at > org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:270) > at > org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1052) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1$$anonfun$apply$1.apply(SmartSink.scala:194) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1$$anonfun$apply$1.apply(SmartSink.scala:175) > at scala.collection.Iterator$class.foreach(Iterator.scala:727) > at scala.collection.AbstractIterator.foreach(Iterator.scala:1157) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1.apply(SmartSink.scala:175) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1.apply(SmartSink.scala:169) > at > org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1.apply(RDD.scala:773) > at > org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1.apply(RDD.scala:773) > at > org.apache.spark.SparkContext$$anonfun$runJob$4.apply(SparkContext.scala:1314) > at > org.apache.spark.SparkContext$$anonfun$runJob$4.apply(SparkContext.scala:1314) > at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:61) > at org.apache.spark.scheduler.Task.run(Task.scala:56) > at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:196) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.IllegalAccessError: > com/google/protobuf/HBaseZeroCopyByteString > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$7.call(ConnectionQueryServicesImpl.java:1265) > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$7.call(ConnectionQueryServicesImpl.java:1258) > at org.apache.hadoop.hbase.client.HTable$17.call(HTable.java:1571) > at java.util.concurrent.FutureTask.run(FutureTask.java:262) > ... 3 more > java.sql.SQLException: java.lang.IllegalAccessError: > com/google/protobuf/HBaseZeroCopyByteString > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.metaDataCoprocessorExec(ConnectionQueryServicesImpl.java:1024) > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.getTable(ConnectionQueryServicesImpl.java:1257) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:348) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:309) > at > org.apache.phoenix.schema.MetaDataClient.updateCache(MetaDataClient.java:305) > at > org.apache.phoenix.compile.FromCompiler$BaseColumnResolver.createTableRef(FromCompiler.java:352) > at > org.apache.phoenix.compile.FromCompiler$SingleTableColumnResolver.<init>(FromCompiler.java:237) > at > org.apache.phoenix.compile.FromCompiler$SingleTableColumnResolver.<init>(FromCompiler.java:231) > at > org.apache.phoenix.compile.FromCompiler.getResolverForMutation(FromCompiler.java:207) > at > org.apache.phoenix.compile.UpsertCompiler.compile(UpsertCompiler.java:248) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:487) > at > org.apache.phoenix.jdbc.PhoenixStatement$ExecutableUpsertStatement.compilePlan(PhoenixStatement.java:478) > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:279) > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:272) > at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) > at > org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:270) > at > org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:1052) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1$$anonfun$apply$1.apply(SmartSink.scala:194) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1$$anonfun$apply$1.apply(SmartSink.scala:175) > at scala.collection.Iterator$class.foreach(Iterator.scala:727) > at scala.collection.AbstractIterator.foreach(Iterator.scala:1157) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1.apply(SmartSink.scala:175) > at > com.origins.platform.connectors.smartSink.SmartSink$$anonfun$loadData$1.apply(SmartSink.scala:169) > at > org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1.apply(RDD.scala:773) > at > org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1.apply(RDD.scala:773) > at > org.apache.spark.SparkContext$$anonfun$runJob$4.apply(SparkContext.scala:1314) > at > org.apache.spark.SparkContext$$anonfun$runJob$4.apply(SparkContext.scala:1314) > at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:61) > at org.apache.spark.scheduler.Task.run(Task.scala:56) > at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:196) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > Caused by: java.lang.IllegalAccessError: > com/google/protobuf/HBaseZeroCopyByteString > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$7.call(ConnectionQueryServicesImpl.java:1265) > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$7.call(ConnectionQueryServicesImpl.java:1258) > at org.apache.hadoop.hbase.client.HTable$17.call(HTable.java:1571) > at java.util.concurrent.FutureTask.run(FutureTask.java:262) > ... 3 more > >
