[ https://issues.apache.org/jira/browse/KAFKA-12845?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17352870#comment-17352870 ]
Matthias J. Sax commented on KAFKA-12845: ----------------------------------------- Ah. I see what you are saying. Sorry that I misunderstood you original description. The change you point out was on purpose thought, because we do the same thing for all other joins (ie, we consider it a bug-fix to bring stream-globalTable join on par with other joins). The join key cannot be null and is treated as invalid data. I agree though, that for a _left_ join, it might make sense to all the key to be null and to produce a left-join result for this case (cf https://issues.apache.org/jira/browse/KAFKA-12317). If we do this, we should do it for both joins though, not just stream-globalTable. As it seems that we are both on the same page, I think we can close this ticket as a duplicate to K12317 ? > Rollback change which requires join key to be non null on > KStream->GlobalKTable > ------------------------------------------------------------------------------- > > Key: KAFKA-12845 > URL: https://issues.apache.org/jira/browse/KAFKA-12845 > Project: Kafka > Issue Type: Improvement > Components: streams > Affects Versions: 2.7.0 > Reporter: Pedro Gontijo > Priority: Major > > As part of [KAFKA-10277|https://issues.apache.org/jira/browse/KAFKA-10277] > the behavior for KStream->GlobalKtable joins was changed to require non null > join keys. > But it seems reasonable that not every record will have an existing > relationship (and hence a key) with the join globalktable. Think about a > User>Car for instance, or PageView>Product. An empty/zero key could be > returned by the KeyMapper but that will make a totally unnecessary search > into the store. > I do not think that makes sense for any GlobalKtable join (inner or left) but > for left join it sounds even more strange. > -- This message was sent by Atlassian Jira (v8.3.4#803005)