vcrfxia commented on code in PR #13552:
URL: https://github.com/apache/kafka/pull/13552#discussion_r1171939132


##########
streams/src/main/java/org/apache/kafka/streams/kstream/internals/CogroupedStreamAggregateBuilder.java:
##########
@@ -73,6 +74,7 @@ <KR> KTable<KR, VOut> build(final Map<KGroupedStreamImpl<K, 
?>, Aggregator<? sup
                 stateCreated,
                 storeBuilder,
                 parentProcessor);
+            statefulProcessorNode.setOutputVersioned(isOutputVersioned);

Review Comment:
   Hm yeah I want to make something like this (and your other related 
suggestions) work so that this wiring is less brittle, but it's tricky since I 
think we only get value from making this change if we make `isOutputVersioned` 
a required constructor parameter of a bunch of different nodes: 
StatefulProcessorNode, KTableKTableJoinNode, TableSourceNode, 
StreamToTableNode, and TableProcessorNode (none of which inherit from each 
other). Do you think it's worth the change to make `isOutputVersioned` required 
for all of these? I do think the benefit of requiring future authors to think 
about `isOutputVersioned` in all of these cases is high, but it's going to 
bloat the codebase, so I'm on the fence as a result.



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