[
https://issues.apache.org/jira/browse/KAFKA-7577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16693770#comment-16693770
]
Daren Thomas commented on KAFKA-7577:
-------------------------------------
Yes, thank you, that does make sense. I verified (in a portion of my code)
that the following works as expected:
{code:java}
stream.map(/select new key/).to("my-new-changelog-topic"); KTable table =
builder.table("my-new-changelog-topic"){code}
I'll change the rest of the code because this is much simpler than I was doing
before and it makes more sense now that I understand the nuance. My incoming
data is a series of table updates so it should be treated as such.
One final note, adding a `KStream#toTable()` would be very helpful. In my
situation, I'm reading topics as streams so I can rekey/repartition them, but
the end goal is to convert them back into tables before performing joins on the
tables. That started me down the road of using a dummy aggregation and led to
this issue.
> Semantics of Table-Table Join with Null Message Are Incorrect
> -------------------------------------------------------------
>
> Key: KAFKA-7577
> URL: https://issues.apache.org/jira/browse/KAFKA-7577
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Affects Versions: 1.1.0
> Reporter: Daren Thomas
> Priority: Major
>
> Observed behavior of Table-Table join with a Null Message does not match the
> semantics described in the documentation
> ([https://docs.confluent.io/current/streams/developer-guide/dsl-api.html#ktable-ktable-join).]
> The expectation is:
> * Message A results in [A, null] from the Left Join
> * Message null (tombstone) results in null (tombstone) from the Left Join
> The observed behavior was that the null (tombstone) message did not pass
> through the Left Join to the output topic like expected. This behavior was
> observed with and without caching enabled, against a test harness, and
> against a local Confluent 5.0.0 platform. It was also observed that the
> KTableKTableLeftJoinProcessor.process() function was not called for the null
> (tombstone) message.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)