SDK 版本 0.4.150414 损坏的作业

Jobs broken with SDK version 0.4.150414

从 Maven 中提取了最新的 SDK 版本 (0.4.150414),但我们的作业现在失败了。

我们已经将其追溯到我们 类 之一中使用的 HashMap 的反序列化,并被 ParDo 转换引用。

观察:

最新版 SDK 中的 serialization/deserialization 功能有什么变化吗?

如果您需要,很高兴将我们的代码发送到反馈邮箱。

最新版本进行了更改以在传递给 ParDo.of 时克隆 DoFn。如果多次使用 DoFn 并在两次使用之间进行修改,这会导致更好的行为。

如果在将 DoFn 传递给 ParDo.of 后填充 HashMap 字段,就会发生您描述的问题。

您可以通过在 ParDo.of 处设置断点并检查那里的 DoFn 状态来确认这一点。要解决此问题,请在调用 ParDo.of.

之前初始化该字段

希望对您有所帮助!