You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Beam JIRA Bot (Jira)" <ji...@apache.org> on 2020/08/10 17:08:13 UTC
[jira] [Commented] (BEAM-8140) Python API: PTransform should be
immutable and reusable
[ https://issues.apache.org/jira/browse/BEAM-8140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17174666#comment-17174666 ]
Beam JIRA Bot commented on BEAM-8140:
-------------------------------------
This issue is P2 but has been unassigned without any comment for 60 days so it has been labeled "stale-P2". If this issue is still affecting you, we care! Please comment and remove the label. Otherwise, in 14 days the issue will be moved to P3.
Please see https://beam.apache.org/contribute/jira-priorities/ for a detailed explanation of what these priorities mean.
> Python API: PTransform should be immutable and reusable
> -------------------------------------------------------
>
> Key: BEAM-8140
> URL: https://issues.apache.org/jira/browse/BEAM-8140
> Project: Beam
> Issue Type: Bug
> Components: sdk-py-core
> Reporter: Chris Suchanek
> Priority: P2
> Labels: stale-P2
>
> 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.4#803005)