Hi Marcin, The console producer hasn't been updated to invoke the appropriate methods if transactions are enabled. It also requires a bit of thinking on how it should work. Would there be a way to start and commit the transaction via the console or would the console producer do it periodically? What was your intent?
Ismael On Thu, Aug 3, 2017 at 9:50 AM, Bienek, Marcin <mbie...@team.mobile.de> wrote: > Hi, > > I’m trying to test the new exactly once transaction feature. Doing simple > test like: > > /opt/kafka/bin/kafka-console-producer.sh --request-required-acks "all" > --producer-property "transactional.id=777" > --producer-property="enable.idempotence=true" > --broker-list broker1:9092 --topic bla > > Fails with: > > java.lang.IllegalStateException: Cannot perform a 'send' before > completing a call to initTransactions when transactions are enabled. > at org.apache.kafka.clients.producer.internals.TransactionManager. > failIfNotReadyForSend(TransactionManager.java:253) > at org.apache.kafka.clients.producer.internals.TransactionManager. > maybeAddPartitionToTransaction(TransactionManager.java:233) > at org.apache.kafka.clients.producer.KafkaProducer.doSend( > KafkaProducer.java:745) > at org.apache.kafka.clients.producer.KafkaProducer.send( > KafkaProducer.java:701) > at kafka.producer.NewShinyProducer.send(BaseProducer.scala:47) > at kafka.tools.ConsoleProducer$.main(ConsoleProducer.scala:61) > at kafka.tools.ConsoleProducer.main(ConsoleProducer.scala) > > I suspect that somehow the producer is not able to trigger the creation of > the internal transaction topic ? > > > BR, > Marcin >