HY,
我正在使用spring-kafka 1.3.0.RELEASE创建一个事务生成器。 当引导服务器关闭时,DefaultKafkaProducerFactory会无休止地等待,直到引导服务器启动。
我做错了什么? 我可以设置超时和/或其他类似属性吗?
这是我重现场景的代码示例:
&()[]{}^=;!'+,`~<|>"
答案 0 :(得分:3)
这是由工厂在创建生成器后调用initTransactions()
引起的,例如,如果没有足够的代理来支持事务日志复制因子。
我不知道为什么超时不适用于该操作。
我们可能会更改工厂以将initTransactions()
推迟到第一个beginTransaction()
- 但这只会将问题推向下游。
我使用kafka 1.0.0客户端测试(可以与1.3.1或更高版本一起使用 - 目前为1.3.2)并且它仍然存在问题。我认为它应该尊重TRANSACTION_TIMEOUT_CONFIG
,但似乎不是。
我建议在Kafka JIRA上打开一个问题。