mjsax commented on code in PR #13496:
URL: https://github.com/apache/kafka/pull/13496#discussion_r1160438018


##########
streams/src/main/java/org/apache/kafka/streams/kstream/internals/KTableKTableInnerJoin.java:
##########
@@ -153,11 +154,37 @@ public void init(final ProcessorContext<?, ?> context) {
 
         @Override
         public ValueAndTimestamp<VOut> get(final K key) {
-            final ValueAndTimestamp<V1> valueAndTimestamp1 = 
valueGetter1.get(key);
+            return computeJoin(key, valueGetter1::get, valueGetter2::get);
+        }
+
+        @Override
+        public ValueAndTimestamp<VOut> get(final K key, final long 
asOfTimestamp) {

Review Comment:
   > I don't understand why this is the property that we wish to preserve.
   
   Because materialization vs non-materialization should be a non-functional 
(ie, non semantical) change, but only a perf/resource footprint change. It's 
like any other non-functional config change.
   
   We decided to not correct older (potentially) incorrect result if 
out-of-order data arrives. Thus, if we materialize the result as you point out 
in you last paragraph, we would always us a potentially non-correct result on 
lookup. Thus, we should do the same thing for the non-materialized case.
   
   What actually raises an interesting question, as discussed in person: if the 
result table is versioned, it's always materialized. And if its 
not-materialized, it would actually always be non-versioned (because the user 
has no way to tell us to make the result table versioned without forcing a 
materialization.) And thus, if we do any `get()` on the non-versioned result 
table, we would never do a `get(k,ts)` anyway, so maybe in practice there is no 
issue?



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