Hi If we can change code on translator != null then next line ( applyStreamingTransform(transform, node, translator); ) will cause NPE
It's main problem why I don't understand code: x = null; if (x == null && f1_null_value_forbid(x)) { ..} f2_null_value_forbid(x); change (x == null) => (x !=null) simple change point of NPE 2016-08-31 13:43 GMT+04:00 Aljoscha Krettek <aljos...@apache.org>: > Hi, > I think this is more suited for the Beam dev list. Nevertheless, I think > this is a coding error and the condition should be > if (translator != null && !applyCanTranslate(transform, node, translator)) > > With what program did you encounter an NPE, it seems to me that this should > rarely happen, at least it doesn't happen in all the Beam runner tests. > > Cheers, > Aljoscha > > On Wed, 31 Aug 2016 at 11:27 Demin Alexey <diomi...@gmail.com> wrote: > > > Hi > > > > Sorry if i mistake with mailing list. > > > > After BEAM-102 was solved in FlinkStreamingPipelineTranslator we have > code > > in visitPrimitiveTransform: > > > > > > if (translator == null && applyCanTranslate(transform, node, > translator)) { > > LOG.info(node.getTransform().getClass().toString()); > > throw new UnsupportedOperationException( > > "The transform " + transform + " is currently not supported."); > > } > > applyStreamingTransform(transform, node, translator); > > > > > > but applyCanTranslate and applyStreamingTransform always require NotNull > > translator > > as result if you try use side input in your code then you will cause NPE > > > > Maybe Aljoscha Krettek could describe how this code must work? > > > > > > Regards, > > Alexey Diomin > > >