[ 
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)

Reply via email to