[ https://issues.apache.org/jira/browse/KAFKA-3229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15172592#comment-15172592 ]
Guozhang Wang commented on KAFKA-3229: -------------------------------------- [~tom_dearman] I feel adding one more parameter to the register() call may be a bit more for users with the processor topology API, could we instead separate the logic of adding the store to stores map and register the inner store (including restoring, etc) so that we can still keep the register API simple with one parameter? > Root statestore is not registered with ProcessorStateManager, inner state > store is registered instead > ----------------------------------------------------------------------------------------------------- > > Key: KAFKA-3229 > URL: https://issues.apache.org/jira/browse/KAFKA-3229 > Project: Kafka > Issue Type: Bug > Components: kafka streams > Affects Versions: 0.10.0.0 > Environment: MacOS El Capitan > Reporter: Tom Dearman > Fix For: 0.10.0.0 > > > When the hierarchy of nested StateStores are created, init is called on the > root store, but parent StateStores such as MeteredKeyValueStore just call > the contained StateStore until a store such as MemoryStore calls > ProcessorContext.register, but it passes 'this' to the method so only that > inner state store (MemoryStore in this case) is registered with > ProcessorStateManager. As state is added to the store none of the parent > stores code will be called, metering, or even StoreChangeLogger to put the > state on the kafka topic. -- This message was sent by Atlassian JIRA (v6.3.4#6332)