Hi, All: I have upgraded my Kafka cluster from 0.10.2 to 1.1 recently. After rolling upgrade, the broker version related configuration is :
inter.broker.protocol.version = 1.1 log.message.format.version = 0.10.2 I keep the log message format as low version because not all clients could upgrade in a short time. When i test Kafka stream EOS feature, get the ERROR log: [ERROR][StreamThread]: stream-thread [xxx-b0b080fb-StreamThread-2] Failed to close task manager due to the following error: org.apache.kafka.common.KafkaException: Cannot execute transactional method because we are in an error state at org.apache.kafka.clients.producer.internals.TransactionManager.maybeFailWithError(TransactionManager.java:784) at org.apache.kafka.clients.producer.internals.TransactionManager.beginAbort(TransactionManager.java:229) at org.apache.kafka.clients.producer.KafkaProducer.abortTransaction(KafkaProducer.java:660) at org.apache.kafka.streams.processor.internals.StreamTask.closeSuspended(StreamTask.java:486) at org.apache.kafka.streams.processor.internals.StreamTask.close(StreamTask.java:546) at org.apache.kafka.streams.processor.internals.AssignedTasks.close(AssignedTasks.java:405) at org.apache.kafka.streams.processor.internals.TaskManager.shutdown(TaskManager.java:260) at org.apache.kafka.streams.processor.internals.StreamThread.completeShutdown(StreamThread.java:1107) at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:731) Caused by: org.apache.kafka.common.errors.UnsupportedForMessageFormatException: The message format version on the broker does not support the request. So my question is : 1) Can I use Kafka stream EOS when the log.message.format.version < 0.11 2) How to set internal topic message format(created by Kafka stream) ? I couldn’t find in Kafka Streams Configs 3) What the performance impact if set log.message.format.version = 1.1 when some clients’ version is still 0.10.2 (trigger message format transforming on broker side?) Thank you!