James Cheng created KAFKA-6967:
----------------------------------
Summary: TopologyTestDriver does not allow pre-populating state
stores that have change logging
Key: KAFKA-6967
URL: https://issues.apache.org/jira/browse/KAFKA-6967
Project: Kafka
Issue Type: Bug
Reporter: James Cheng
TopologyTestDriver does not allow pre-populating a state store that has logging
enabled. If you try to do it, you will get the following error message:
{code:java}
java.lang.IllegalStateException: This should not happen as timestamp() should
only be called while a record is processed
at
org.apache.kafka.streams.processor.internals.AbstractProcessorContext.timestamp(AbstractProcessorContext.java:153)
at
org.apache.kafka.streams.state.internals.StoreChangeLogger.logChange(StoreChangeLogger.java:59)
at
org.apache.kafka.streams.state.internals.ChangeLoggingKeyValueBytesStore.put(ChangeLoggingKeyValueBytesStore.java:69)
at
org.apache.kafka.streams.state.internals.ChangeLoggingKeyValueBytesStore.put(ChangeLoggingKeyValueBytesStore.java:29)
at
org.apache.kafka.streams.state.internals.InnerMeteredKeyValueStore.put(InnerMeteredKeyValueStore.java:198)
at
org.apache.kafka.streams.state.internals.MeteredKeyValueBytesStore.put(MeteredKeyValueBytesStore.java:117)
{code}
Also see:
https://github.com/apache/kafka/blob/trunk/streams/test-utils/src/test/java/org/apache/kafka/streams/TopologyTestDriverTest.java#L723-L740
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)