Chris Suchandk created BEAM-8140: ------------------------------------ Summary: Python API: PTransform should be immutable Key: BEAM-8140 URL: https://issues.apache.org/jira/browse/BEAM-8140 Project: Beam Issue Type: Improvement Components: beam-model Reporter: Chris Suchandk
While the Java API seems fine the Python API is (at least) counterintuitive. Let's see the following example: {code:python} p1 = beam.Pipeline() p2 = beam.Pipeline() node = 'ReadTrainData' >> beam.io.ReadFromText("/tmp/aaa.txt") p1 | node p2 | node //fails here {code} The code above will fail because the _node_ somehow remembers that it was already attached to _p1_. In fact, unlike in Java, the | (apply) method is defined on the _PTransform_. If any, only the pipeline object should be mutable here. -- This message was sent by Atlassian Jira (v8.3.2#803003)