Thanks for the question Gary. The reasoning for crash the new sendTxnOffsets API is because we don't want users to unconsciously violate the EOS guarantee. In your case, using this API with 2.4.1 is not supported anyway, so the upgrade path has to start from broker first to 2.5, and then client binaries. Is there any further concern that blocks you from getting the broker side upgrade first before using the new API?
Boyang On Thu, Apr 2, 2020 at 1:37 PM Gary Russell <gruss...@pivotal.io> wrote: > Is there any way to determine the broker version in the kafka-clients? > > I need to determine whether I can use the new sendOffsetsToTransaction > with ConsumerGroupMetadata or use the old one. > > If I use the new API with a 2.4.1 broker, I get > > UpsupportedVersionException: Attempted to write a non-default generationId > at version 2 > > Alternatively, couldn't the client simply extract the groupId from the > ConsumerGroupMetadata and use the old struct if the broker is too old? > > I'd rather not have a user property in my framework to tell us which API to > use. > > Thanks in advance. >