ableegoldman commented on code in PR #18048:
URL: https://github.com/apache/kafka/pull/18048#discussion_r1876998523


##########
streams/src/main/java/org/apache/kafka/streams/kstream/internals/KTableImpl.java:
##########
@@ -788,19 +768,47 @@ private <VO, VR> KTable<K, VR> doJoin(final KTable<K, VO> 
other,
             storeFactory = null;
         }
 
+        final Set<StoreBuilder<?>> stores = storeFactory == null ? null :

Review Comment:
   nit: I would prefer to leave the type as StoreFactory for as long as 
possible and only do the `FactoryWrappingStoreBuilder` wrapping to convert it 
into a Set<StoreBuilder> at the last possible moment, inside the 
ProcessorSupplier#stores implementation. This way it's clear that this is 
actually meant to be a StoreFactory at this point in the code, and is not 
necessarily a resolved StoreBuilder yet. Having to introduce a 
FactoryWrappingStoreBuilder is bad enough, best not to further blur the lines 
between StoreBuilder and StoreFactory by wrapping this any earlier than we need 
to
   
   (Also keeping all the `FactoryWrappingStoreBuilder` wrappings contained 
within the #stores implementation will make it easier to refactor and clean 
this up later)



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to