I didn't know it was already fixed :) I pulled in changes from the
latest master before I tested. Thus, it worked for me.


On Thu, Sep 1, 2016 at 10:38 AM, Maximilian Michels <m...@apache.org> wrote:
> Hi Alexey,
>
> You don't have to set the streaming mode. The Flink Runner will
> automatically choose to use streaming mode when it discovers
> UnboundedSources like Kafka. I'm wondering why that didn't work in
> your case. I just ran your example and it chose streaming mode and
> didn't return an error during pipeline translation.
>
> So I'm curious, which version of Beam are you working with?
>
> Best,
> Max
>
>
> On Wed, Aug 31, 2016 at 12:34 PM, Demin Alexey <diomi...@gmail.com> wrote:
>> Thanks
>>
>> with if (translator == null || !applyCanTranslate(transform, node,
>> translator))  all working as expectected
>>
>>
>> Regards,
>> Alexey Diomin
>>
>>
>> 2016-08-31 14:12 GMT+04:00 Aljoscha Krettek <aljos...@apache.org>:
>>
>>> Ah I see, an unbounded source, such as the Kafka source does not work in
>>> batch mode (which streamStreaming(false) enables). The code should work in
>>> streaming mode if you apply some window that is compatible with the
>>> side-input window to the main input.
>>>
>>> I think the code in streaming still works because there cannot be cases
>>> where the translator is null right now. The correct check should be this,
>>> though:
>>> if (translator == null || !applyCanTranslate(transform, node, translator))
>>>
>>> Cheers,
>>> Aljoscha
>>>
>>> On Wed, 31 Aug 2016 at 12:07 Demin Alexey <diomi...@gmail.com> wrote:
>>>
>>> > Program for reproduce
>>> >
>>> > https://gist.github.com/xhumanoid/d784a4463a45e68acb124709a521156e
>>> >
>>> > 1) options.setStreaming(false);  - we have NPE and i can't understand how
>>> > code work
>>> > 2) options.setStreaming(true);  - pipeline can compile (he still have
>>> > error, but it's my incorrect work with window)
>>> >
>>> >
>>> > 2016-08-31 13:53 GMT+04:00 Demin Alexey <diomi...@gmail.com>:
>>> >
>>> > > 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
>>> > >> >
>>> > >>
>>> > >
>>> > >
>>> >
>>>

Reply via email to