You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kyle Weaver (JIRA)" <ji...@apache.org> on 2019/03/01 23:15:00 UTC

[jira] [Updated] (BEAM-6762) Behavior requires documentation: Pipeline can't run before fusion

     [ https://issues.apache.org/jira/browse/BEAM-6762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kyle Weaver updated BEAM-6762:
------------------------------
    Description: 
When I was prototyping a portable runner, I tested using a trivial pipeline:
{noformat}
PCollection<byte[]> result = pipeline.apply("impulse", Impulse.create());
PAssert.thatSingleton(result).isEqualTo(new byte[]{});
{noformat}
When I tried traversing this pipeline, I found that the URN for the transform PAssert$0 was strangely missing. Turns out GreedyPipelineFuser solves this problem. I don't know why this is so, but I think this behavior should at least be documented in the [runner authoring guide|https://beam.apache.org/contribute/runner-guide/#pipeline] to save future runner authors some debugging.

  was:
When I was prototyping a portable runner, I tested using a trivial pipeline:

{noformat}
PCollection<byte[]> result = p.apply("impulse", Impulse.create());
PAssert.thatSingleton(result).isEqualTo(new byte[]{});
{noformat}

When I tried traversing this pipeline, I found that the URN for the transform PAssert$0 was strangely missing. Turns out GreedyPipelineFuser solves this problem. I don't know why this is so, but I think this behavior should at least be documented in the [runner authoring guide|https://beam.apache.org/contribute/runner-guide/#pipeline] to save future runner authors some debugging.


> Behavior requires documentation: Pipeline can't run before fusion
> -----------------------------------------------------------------
>
>                 Key: BEAM-6762
>                 URL: https://issues.apache.org/jira/browse/BEAM-6762
>             Project: Beam
>          Issue Type: Task
>          Components: runner-core
>            Reporter: Kyle Weaver
>            Priority: Minor
>              Labels: documentation
>
> When I was prototyping a portable runner, I tested using a trivial pipeline:
> {noformat}
> PCollection<byte[]> result = pipeline.apply("impulse", Impulse.create());
> PAssert.thatSingleton(result).isEqualTo(new byte[]{});
> {noformat}
> When I tried traversing this pipeline, I found that the URN for the transform PAssert$0 was strangely missing. Turns out GreedyPipelineFuser solves this problem. I don't know why this is so, but I think this behavior should at least be documented in the [runner authoring guide|https://beam.apache.org/contribute/runner-guide/#pipeline] to save future runner authors some debugging.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)