THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Users who want to keep the current behavior can prepend a .filter() operator to the aforementioned operators and filter accordingly.
E.g.
//current
leftStream.leftJoin(rightStream, (lv, rv) -> join(lv, rv), windows);
//new if old behavior is needed
rightStream = rightStream.filter((key, value) -> key != null && value != null);
leftStream.filter((key, value) -> key != null && value != null)
.leftJoin(rightStream, (lv, rv) -> join(lv, rv), windows);
//Both key and value needs to be null checked as current defined behavior for stream-stream join is:
...
*
* If an input record key or value is {@code null} the record will not be included in the join operation and thus no
* output record will be added to the resulting {@code KStream}.
*
...Why not make this change opt in?
By default we would like the DSL be consistent with the defined semantics.
...