Yifan Mai created BEAM-11024:
--------------------------------

             Summary: Visit composite transform nodes in 
Pipeline._check_replacement()
                 Key: BEAM-11024
                 URL: https://issues.apache.org/jira/browse/BEAM-11024
             Project: Beam
          Issue Type: Bug
          Components: sdk-py-core
            Reporter: Yifan Mai
            Assignee: Yifan Mai


Pipeline.replace_all() calls _replace(), which replaces transform nodes using a 
PipelineVisitor, and then _check_replacement(), which validates that there are 
no replaceable transform nodes using a PipelineVisitor i.e. it checks that 
PTransformOverride.matches() does not return True on any nodes.

Currently, _replace() visits [both composite and leaf transform 
nodes|https://github.com/apache/beam/blob/b7ae7bb1dc28a7c8f26e9f48682e781a74e2d3c4/sdks/python/apache_beam/pipeline.py#L376-L382]
 whereas _check_replacement() visits [only leaf transform 
nodes|https://github.com/apache/beam/blob/b7ae7bb1dc28a7c8f26e9f48682e781a74e2d3c4/sdks/python/apache_beam/pipeline.py#L463-L468].
 _check_replacement() should visit composite transform nodes as well for 
symmetry.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to