mjsax commented on PR #18887:
URL: https://github.com/apache/kafka/pull/18887#issuecomment-2670317669

   @nilmadhab -- I am actively working on my side to dig into FK join to 
refresh my memory and to fully understand the problem and fix, and will cycle 
back soon.
   
   One thing I noticed is, that we actually should be able to use TTD to 
reproduce the issue. There is `KTableKTableForeignKeyJoinIntegrationTest` that 
we can re-use. The problem with `KTableKTableForeignKeyJoinIntegrationTest` is, 
that it uses `readKeyValuesToMap()` to verify the result. For this case, if we 
get two results for the same key, only the last results is checked (as any 
previous result is overwritten when we produce the result `Map`)... In general, 
we should never get more than one result for each update to the left hand side 
table, but if it happens the test does not catch it.
   
   While we might want to refactor the test and use `readKeyValuesToList()` 
instead, it might be something we should not piggy-back on this PR, but do an 
independent PR to update the test. However, when you add a new test for the 
fix, you could use `readKeyValuesToList()` and it should simplify testing 
significantly, instead of the current approach to use an "heavy weight" 
integration test for it. Thoughts?
   
   Btw, there is also an older PR https://github.com/apache/kafka/pull/15607 
which fixes something similar, that I try to re-activate. We need to coordinate 
both PRs.


-- 
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

Reply via email to