@robertwb

> _a runner_ might do substitution and implement a primitive in terms of other 
> primitives, _but leave the original in the graph_...

(mostly to check my own understanding): here it's the python SDK, not a runner, 
that:
1. implements `Read` (normally a primitive) in terms of other transforms 
(including a `Reshuffle`, which in turn wraps a `ParDo` primitive),
2. leaves the original in the graph

The _runner_ substitution case (`ReferenceRunner`) does not leave the original 
in the graph, and the error we were getting there had to do with a PCollection 
being left with no "primitive" transform that produced it.

@tweise good idea, I've updated the comment and force-pushed it here

[ Full content available at: https://github.com/apache/beam/pull/6461 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to