Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When set to true and exactly-once is turned on, Kafka Streams application will choose to use single producer per thread. Or alternatively, we could use admin client to fetch the inter.broker.protocol on start to choose which type of producer they want to use.

Fencing for upgrades

To fence an old producer accessing the same topic partition, we will introduce a new exception type:

...

  • Have a new API to proactively abort ongoing transactions:
  • Producer Pooling:
  • Producer support multiple transactional ids:
  • Tricky rebalance synchronization:
  • We could use admin client to fetch the inter.broker.protocol on start to choose which type of producer they want to use. This approach however is harder than we expected, because brokers maybe on the different versions and if we need user to handle the tricky behavior during upgrade, it would actually be unfavorable. So a hard-coded config is a better option we have at hand.