[
https://issues.apache.org/jira/browse/BEAM-811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Groh resolved BEAM-811.
------------------------------
Resolution: Fixed
> DoFnLifecycleManager may call teardown on a DoFn multiple times
> ---------------------------------------------------------------
>
> Key: BEAM-811
> URL: https://issues.apache.org/jira/browse/BEAM-811
> Project: Beam
> Issue Type: Bug
> Components: runner-direct
> Reporter: Thomas Groh
> Assignee: Thomas Groh
> Fix For: 0.4.0-incubating
>
>
> Because the iterator returned by ConcurrentMap.iterator() is weakly
> consistent, we may obtain a DoFn that is simultaneously removed from the map
> while iterating in DoFnLifecycleManager#removeAll and removed via the
> explicit remove call in DoFnLifecycleManger#remove
> Instead, utilize the Cache#invalidate() method and an appropriate
> RemovalListener to ensure that DoFn instances that are removed are torn down,
> and exceptions are appropriately reported.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)