在运行任何应用程序逻辑之前,我有一个在启动阶段卡住的Cloud Dataflow作业。我通过在processElement
步骤内部添加了一条日志输出语句来测试此操作,但它没有出现在日志中,因此看起来没有达到。云数据流作业在启动前陷入无尽循环
我可以在日志中看到的是下面的消息,这里面似乎每一分钟:
logger: Starting supervisor: /etc/supervisor/supervisord_watcher.sh: line 36: /proc//oom_score_adj: Permission denied
而且这些每隔几秒钟,其循环:
VM is healthy? true.
http: TLS handshake error from 172.17.0.1:38335: EOF
Job is in state JOB_STATE_RUNNING, will check again in 30 seconds.
工作ID是2015-09-14_06_30_22-15275884222662398973
,虽然我有两个额外的工作(2015-09-14_05_59_30-11021392791304643671
,2015-09-14_06_08_41-3621035073455045662
),我开始上午,并有同样的问题。
关于可能会导致此问题的任何想法?
预期所有工作人员日志消息并与正常操作一致。所以他们没有解释你的工作为什么停滞不前。 –
谢谢杰里米。我怀疑问题在于构建工作本身,它通过一堆数据循环并调用ProcessContext.output()。可能不是编写它的理想方式。 –
你可以详细说明你的意思吗?“通过一堆数据循环并调用output()'?如果数据从输入到DoFn中,这应该不是问题(因为它发生在工作人员,在工作完成后);或者数据来自DoFn中的某个字段或以某种方式被序列化到工作人员那里? –