Thomas Groh created BEAM-811:
--------------------------------

             Summary: 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)

Reply via email to