[
https://issues.apache.org/jira/browse/BEAM-5354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16850271#comment-16850271
]
Robert Burke commented on BEAM-5354:
------------------------------------
I have a fix!
There's a book keeping step in the Portability Protos that requires side inputs
to have another transform added to the graph for them to work, but this step
was only being to as the root scope, which causes them to manifest poorly in
the Dataflow representation, when that value was infixed in a scope. Which is
essentially any time.
For Example: Say one has a scope S, with transforms SA, where SB takes in a
Side input.
The side input for SB would need a SBKeyed step added to the graph.
Presently, SBKeyed would be added as a root_transform to the graph. This causes
runners sensitive to the ordering to sometimes put SBKeyed *after* SB, which in
Dataflow's case, triggers the above error.
The fix is to properly add inserted transforms to the parent scope when
transforming the graph to the portability representation in graphx/translate.go
> Side Inputs seems to be non-working in the sdk-go
> -------------------------------------------------
>
> Key: BEAM-5354
> URL: https://issues.apache.org/jira/browse/BEAM-5354
> Project: Beam
> Issue Type: Bug
> Components: sdk-go
> Reporter: Tomas Roos
> Assignee: Robert Burke
> Priority: Major
>
> Running the contains example fails with
>
> {code:java}
> Output i0 for step was not found.
> {code}
> This is because of the call to debug.Head (which internally uses SideInput)
> Removing the following line
> [https://github.com/apache/beam/blob/master/sdks/go/examples/contains/contains.go#L50]
>
> The pipeline executes well.
>
> Executed on id's
>
> go-job-1-1536664417610678545
> vs
> go-job-1-1536664934354466938
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)