You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Sophie Blee-Goldman (Jira)" <ji...@apache.org> on 2019/10/11 23:43:00 UTC

[jira] [Commented] (KAFKA-9032) Serializer is invoked with null when foreignValue=null

    [ https://issues.apache.org/jira/browse/KAFKA-9032?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16949841#comment-16949841 ] 

Sophie Blee-Goldman commented on KAFKA-9032:
--------------------------------------------

[~abellemare] [~vvcephei] Can you take a look?

> Serializer is invoked with null when foreignValue=null
> ------------------------------------------------------
>
>                 Key: KAFKA-9032
>                 URL: https://issues.apache.org/jira/browse/KAFKA-9032
>             Project: Kafka
>          Issue Type: Bug
>          Components: streams
>    Affects Versions: 2.4.0
>         Environment: MacOS X, Kafka Streams branch 1678a54.
>            Reporter: ghassan Yammine
>            Priority: Blocker
>             Fix For: 2.4.0
>
>         Attachments: foreign-key-join-npe-stack-trace.txt
>
>
> I'm using the Ktable's foreign key join (ref: KIP-213).  When I try to join two KTables, and the left side's foreignKey does not have a key match in the right (other) KTable, the Join operation invokes the serializer with a foreignValue=null.  This then causes a NullPointerException in the provided (my) serializer.
> Stack Trace is attached.  Notes:
> {code:java}
> In method RecordCollectorImpl#send() (around line 97), inspecting 'value' shows:
> SubscriptionResponseWrapper{version=0, foreignValue=null, originalValueHash=[-5192323959200117799, -2503872568163857643]} {code}
> This foreignValue is passed to Serializer.java#serialize() as 'data'.  Ultimately, it ends up in SubscriptionResponseWrapperSerde#serialize (#72) where 'serliazedData` is null.  This is what is passed to my serializer.
> This exception is readily reproducible; just set up the left message-value to include a foreign key value that does not exist on the right side (the 'other' table).
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)