【发布时间】:2017-08-29 09:06:18
【问题描述】:
我正在尝试在我们的测试集群上的 Flink 上运行 Apache Beam 管道。在通过序列化对对象进行编码期间,org.apache.flink.runtime.io.disk.SimpleCollectingOutputView:79 处的 EOFException 一直失败。我还无法在本地重现该错误。你可以找到the entire job log here。一些值已被假数据替换。
用于运行管道的命令:
bin/flink run \
-m yarn-cluster \
--yarncontainer 1 \
--yarnslots 4 \
--yarnjobManagerMemory 2000 \
--yarntaskManagerMemory 2000 \
--yarnname "EBI" \
pipeline.jar \
--runner=FlinkRunner \
--zookeeperQuorum=hdp-master-001.fake.org:2181
虽然我认为它不相关,但要序列化的对象是可序列化的,并且具有隐式和显式编码器,但这不会影响情况。
什么可能导致这种情况,我可以做些什么来解决它?
目前,将管理器的堆内存增加到 4 到 8GiB 之间似乎可以防止异常。仍然不确定这是否应该是正常的 Flink 行为(不应该溢出到磁盘吗?)。似乎不是一个可以扩展的解决方案。
【问题讨论】: