You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Shashank Prabhakara (JIRA)" <ji...@apache.org> on 2018/01/16 10:32:00 UTC
[jira] [Created] (BEAM-3482) Java serialiazation exception when
using BigQueryIO
Shashank Prabhakara created BEAM-3482:
-----------------------------------------
Summary: Java serialiazation exception when using BigQueryIO
Key: BEAM-3482
URL: https://issues.apache.org/jira/browse/BEAM-3482
Project: Beam
Issue Type: Bug
Components: sdk-java-gcp
Affects Versions: 2.3.0
Reporter: Shashank Prabhakara
Assignee: Chamikara Jayalath
When writing data to BQ using BigQueryIO, we get the following exception when checkpointing. To reproduce, use BigQueryIO.writeTableRows() using sufficiently large dataset with latest code from master branch.
The following stack trace is when using using ApexRunner:
ERROR com.datatorrent.stram.engine.StreamingContainer: Operator set [OperatorDeployInfo[id=20,name=BigQueryIO.Write/PrepareWrite/ParDo(Anonymous)/ParMultiDo(Anonymous),type=GENERIC,checkpoint=\{ffffffffffffffff, 0, 0},inputs=[OperatorDeployInfo.Inpu
tDeployInfo[portName=input,streamId=stream9,sourceNodeId=19,sourcePortName=output,locality=CONTAINER_LOCAL,partitionMask=0,partitionKeys=<null>]],outputs=[OperatorDeployInfo.OutputDeployInfo[portName=output,streamId=stream56,bufferServer=<null>]]]] stopped running due to
an exception.
com.esotericsoftware.kryo.KryoException: Error during Java serialization.
Serialization trace:
doFn (org.apache.beam.runners.apex.translation.operators.ApexParDoOperator)
at com.esotericsoftware.kryo.serializers.JavaSerializer.write(JavaSerializer.java:33)
at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:523)
at com.esotericsoftware.kryo.serializers.ObjectField.write(ObjectField.java:61)
at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:495)
at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:599)
at com.datatorrent.common.util.FSStorageAgent.store(FSStorageAgent.java:190)
at com.datatorrent.common.util.AsyncFSStorageAgent.save(AsyncFSStorageAgent.java:101)
at com.datatorrent.stram.engine.Node.checkpoint(Node.java:521)
at com.datatorrent.stram.engine.GenericNode.run(GenericNode.java:461)
at com.datatorrent.stram.engine.StreamingContainer$2.run(StreamingContainer.java:1428)
Caused by: java.io.NotSerializableException: org.apache.beam.sdk.io.gcp.bigquery.DynamicDestinations$SideInputAccessorViaProcessContext
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
at com.esotericsoftware.kryo.serializers.JavaSerializer.write(JavaSerializer.java:30)
... 9 more
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)