agavra opened a new pull request, #17903:
URL: https://github.com/apache/kafka/pull/17903

   ### Description
   
   This PR is part of the implementation for KIP-1112 
([KAFKA-18026](https://issues.apache.org/jira/browse/KAFKA-18026)). In order to 
have DSL operators be properly wrapped by the interface suggestion in 1112, we 
need to make sure they all use the `ConnectedStoreProvider#stores` method to 
connect stores instead of manually calling `addStateStore`.
   
   ### Review Guide
   
   1. Checkout `KTableSource` which now implements the `stores()` method
   2. GlobalKTables no longer hack materialized by setting the source name on 
the builder, instead we pipe a `forceQueryable` into `MaterializedInternal` so 
that we directly indicate that it should be queryable/materialized instead of 
relying on a side effect of setting the store name
   3. `StoreDelegatingProcessorSupplier` is used only in the case of 
GlobalKTables because the stores are expected to be passed in separately in the 
public API -- this PR doesn't change that
   4. `FactoryWrappingStoreBuilder` is used so that already created store 
factories can be typecast as `StoreBuilder`s. 
   
   **NOTE:** For point (3), I think this might be a bug in the current 
implementation that we may want to change in 4.0 since it's backwards 
incompatible. If you pass in a `ProcessorSupplier` to `addGlobalTable`, the 
`stores()` method on that will be ignored.
   
   ### Testing
   
   This is a refactor only, there is no new behaviors.
   
   ### Committer Checklist (excluded from commit message)
   - [ ] Verify design and implementation 
   - [ ] Verify test coverage and CI build status
   - [ ] Verify documentation (including upgrade notes)
   


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