florin-akermann commented on code in PR #15189: URL: https://github.com/apache/kafka/pull/15189#discussion_r1518848428
########## streams/src/test/java/org/apache/kafka/streams/integration/RelaxedNullKeyRequirementJoinTest.java: ########## @@ -71,11 +71,21 @@ void afterEach() { @Test void testRelaxedLeftStreamStreamJoin() { leftStream - .leftJoin(rightStream, JOINER, WINDOW) + .leftJoin(rightStream, JOINER, WINDOW_60MS_GRACE_10MS) .to(OUT); initTopology(); - left.pipeInput(null, "leftValue", 1); - assertEquals(Collections.singletonList(new KeyValue<>(null, "leftValue|null")), out.readKeyValuesToList()); + left.pipeInput(null, "leftValue1", 1); + left.pipeInput(null, "leftValue2", 90); + left.pipeInput(null, "lateArrival-Dropped", 19); + left.pipeInput(null, "lateArrivalWithinGrace", 20); + assertEquals( + Arrays.asList( + new KeyValue<>(null, "leftValue1|null"), + new KeyValue<>(null, "leftValue2|null"), + new KeyValue<>(null, "lateArrivalWithinGrace|null") Review Comment: I just realized that partition and offset are not available in this context... So, with regards to the second bullet point, probably the only distinguishing feature would be the value itself? I start to wonder, is it really worth it to add this complexit? We know all three events should eventually be sent downstream anyway. This way we could avoid using additional storage & extending `TimestampedKeyAndJoinSideSerde` with another generic field. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org