ghassan Yammine created KAFKA-9032:
--------------------------------------

             Summary: 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
         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 a 
two tables 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)

Reply via email to