In earlier versions of Kafka exactly-once semantics static mapping should have between transaction id and topic partitions during consumer group mismatch there are chances that transaction id gets different topic partition.
To avoid such a scenario KIP-447: Producer scalability for exactly once semantics was implemented, what I was understood from the KIP-477 that the old producer fenced using the fetch offset call with the help of a new API(sendOffsetToProdcuer) so transactio.id not used for fencing.
But my doubt here is,
still transactional producer expect transaction.id how should I choose this value for the latest Kafka version?
transaction.id should have a static mapping with partitions, fetch offset fencing take effect only during consumer group rebalancing?
Is this value invalid for the latest version?
Please help me with this I am trying to understand Kafka EoS and implement it in the production system.