我正在尝试使用jersey Rest-API通过java-Spark程序从HBASE表中获取记录,然后出现以下错误,但是当我通过spark-Jar访问HBase表时,代码正在执行且没有错误。
我有2个用于Hbase的工作程序节点和2个用于spark的工作程序节点,它们由同一主服务器维护。
WARN TaskSetManager:在阶段0.0(TID 1,172.31.16.140)中丢失了任务1.0:java.lang.IllegalStateException:java.io.ObjectInputStream上java.io.ObjectInputStream $ BlockDataInputStream.setBlockDataMode(ObjectInputStream.java:2421)处的未读取块数据.readObject0(ObjectInputStream.java:1382)at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream。 org.apache.spark.serializer.JavaDeserializationStream.readObject(JavaSerializer.scala)上java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)上的java:io.ObjectInputStream.java:1350) :69),网址为org.apache.spark.serializer.JavaSerializerInstance。在org.apache.spark.executor.Executor $ TaskRunner.run(Executor.scala:194)处在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)处进行反序列化(JavaSerializer.scala:95) .concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)在java.lang.Thread.run(Thread.java:745)