The Kafka Fetcher you mean the flink JSON schemas? They throw IOExceptions?

Also what's the purpose of isEndOfStream most schemas I looked at don't do
anything but just return false?

On Fri., Oct. 11, 2019, 11:44 p.m. Zhu Zhu, <reed...@gmail.com> wrote:

> Hi John,
>
> It should work with a *null* return value.
> In the java doc of DeserializationSchema#deserialize it says that
>
>> *@return The deserialized message as an object (null if the message
>> cannot be deserialized).*
>
>
> I also checked the Kafka fetcher in Flink and it can correctly handle a
> null deserialized record.
>
> Just pay attention to also not make *DeserializationSchema#isEndOfStream* 
> throw
> errors on a null record provided.
>
> Thanks,
> Zhu Zhu
>
> John Smith <java.dev....@gmail.com> 于2019年10月12日周六 上午5:36写道:
>
>> Hi using Flink 1.8.0.
>>
>> I am ingesting data from Kafka, unfortunately for the time being I have
>> not looked into using the schema registry.
>>
>> So for now I would like to write a simple deserialization schema that
>> discards the data if deserialization fails.
>>
>> The other option is to do in flat map with markers and split to dead
>> letter queue, but I'm not too concerned about that for now.
>>
>> Is it ok to just return null if deserialization fails?
>>
>> @Override
>> public MyObject deserialize(byte[] message) {
>>    try {
>>       return MyDecoder.decode(message));
>>    } catch    (IOException ex) {
>>       logger.warn("Failed to decode message.", ex);
>>       return null;
>>    }
>> }
>>
>>

Reply via email to