Hi Eugene, Thanks for sharing the info. That PAssertionSite tracks where an assertion error occurred. Do you know if it is possible to get the class name and line number where a PTransform was added?
Thanks, Shen On Mon, Aug 14, 2017 at 10:54 PM, Eugene Kirpichov < [email protected]> wrote: > Hi Shen, > Responding just to one part of your message - "remember the line at which > the PTransform was added": take a look at > https://github.com/apache/beam/pull/2247 which does this for PAssert. > > On Mon, Aug 14, 2017 at 7:32 PM Shen Li <[email protected]> wrote: > > > In 0.5.0 or earlier releases, PipelineRunner provides an > > apply(PTransform<InputT, OutputT>, InputT) method which allows runner > > implementation to perform actions when the PTransform is added to the > > pipeline. In later releases, that apply(...) method has been replaced by > a > > Pipeline#replaceAll() method, where the runner can only get involved > after > > the pipeline has been fully constructed. In terms of override > PTransforms, > > these two APIs are identical. But, the early API could still be helpful. > > For example, the runner could remember the line at which the PTransform > was > > added, and provide that info to users to assist debugging. Is it possible > > to add that API back? Or is there any other way to involve the runner > when > > a PTransform is added? > > > > Thanks, > > Shen > > >
