[ https://issues.apache.org/jira/browse/KAFKA-12574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17312027#comment-17312027 ]
A. Sophie Blee-Goldman commented on KAFKA-12574: ------------------------------------------------ I would expect users who don't read the upgrade guide to at least be somewhat careful when performing a rolling upgrade, especially when it's a breaking change release, and at least check that the bounced node had successfully restarted before they go about bouncing the rest of them. And in that case, the first bounced node would fail immediately and clearly. So only if they (a) skipped the upgrade guide, and (b) did not monitor a single node during the rolling upgrade, would they experience an outage. FWIW I'm a little on the fence about (4) as well, but a user would have to be pretty nonchalant to experience a full blown outage. A slightly better take on 3 might be to make the new config StreamsConfig#EXACTLY_ONCE_SEMANTICS -- basically take advantage of the fact that the current config is just EXACTLY_ONCE/EXACTLY_ONCE_BETA, and pop the _SEMANTICS suffix on there so we can avoid coming up with a new name. I guess we could also deprecate AT_LEAST_ONCE and replace it with AT_LEAST_ONCE_SEMANTICS for full consistency > Deprecate eos-alpha > ------------------- > > Key: KAFKA-12574 > URL: https://issues.apache.org/jira/browse/KAFKA-12574 > Project: Kafka > Issue Type: Improvement > Components: streams > Reporter: A. Sophie Blee-Goldman > Priority: Blocker > Labels: needs-kip > Fix For: 3.0.0 > > > In KIP-447 we introduced a new thread-producer which is capable of > exactly-once semantics across multiple tasks. The new mode of EOS, called > eos-beta, is intended to eventually be the preferred processing mode for EOS > as it improves the performance and scaling of partitions/tasks. The only > downside is that it requires brokers to be on version 2.5+ in order to > understand the latest APIs that are necessary for this thread-producer. > We should consider deprecating the eos-alpha config, ie > StreamsConfig.EXACTLY_ONCE, to encourage new. & existing EOS users to migrate > to the new-and-improved processing mode, and upgrade their brokers if > necessary. > Eventually we would like to be able to remove the eos-alpha code paths from > Streams as this will help to simplify the logic and reduce the processing > mode branching. But since this will break client-broker compatibility, and > 2.5 is still a relatively recent version, we probably can't actually remove > eos-alpha in the near future -- This message was sent by Atlassian Jira (v8.3.4#803005)