[ https://issues.apache.org/jira/browse/KAFKA-12475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17306916#comment-17306916 ]
Bruno Cadonna commented on KAFKA-12475: --------------------------------------- Yes, I agree with you. I mainly brought this up to have the challenges collected in this ticket. I still do not know how to include a transaction of a remote storage into a Kafka transaction. But I guess this is solvable in one way or the other. > Kafka Streams breaks EOS with remote state stores > ------------------------------------------------- > > Key: KAFKA-12475 > URL: https://issues.apache.org/jira/browse/KAFKA-12475 > Project: Kafka > Issue Type: Bug > Components: streams > Reporter: A. Sophie Blee-Goldman > Priority: Major > Labels: needs-kip > > Currently in Kafka Streams, exactly-once semantics (EOS) require that the > state stores be completely erased and restored from the changelog from > scratch in case of an error. This erasure is implemented by closing the state > store and then simply wiping out the local state directory. This works fine > for the two store implementations provided OOTB, in-memory and rocksdb, but > fails when the application includes a custom StateStore based on remote > storage, such as Redis. In this case Streams will fail to erase any of the > data before reinserting data from the changelog, resulting in possible > duplicates and breaking the guarantee of EOS. -- This message was sent by Atlassian Jira (v8.3.4#803005)