[ https://issues.apache.org/jira/browse/KAFKA-6542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16963776#comment-16963776 ]
Matthias J. Sax commented on KAFKA-6542: ---------------------------------------- [~cpreisler], it's unfortunately not that easy. In fact, `StreamThread` will not process any stream-side records before it goes to state RUNNING. However, during processing, the table might get updated at any point in time and if there is out-of-order data, a stream-side record might join with incorrect table state. However, the Jira title is miss-leading anyway, because a table update can never trigger a join computation anyway, because conceptually the stream side is empty. Hence, a join can only happen if a stream-record is processed. Also note, if there are no out-of-order data, Kafka Streams ensure that the table is updated first if the table-record has a smaller timestamp than the stream-record (cf KAFKA-3514). Fixing the out-of-order data issue is a larger and more complex change and thus, would even require a KIP. > Tables should trigger joins too, not just streams > ------------------------------------------------- > > Key: KAFKA-6542 > URL: https://issues.apache.org/jira/browse/KAFKA-6542 > Project: Kafka > Issue Type: Improvement > Components: streams > Affects Versions: 1.1.0 > Reporter: Antony Stubbs > Priority: Major > > At the moment it's quite possible to have a race condition when joining a > stream with a table, if the stream event arrives first, before the table > event, in which case the join will fail. > This is also related to bootstrapping KTables (which is what a GKTable does). > Related to: KAFKA-4113 Allow KTable bootstrap -- This message was sent by Atlassian Jira (v8.3.4#803005)