phpkafka icon indicating copy to clipboard operation
phpkafka copied to clipboard

对于 topic 不存在时获取 meta 信息直接抛出异常(移除重试)

Open anoxia opened this issue 2 years ago • 6 comments

当生产者关闭自动创建 topic 参数设置,然后发起投递时会出现获取 topic meta 数据一直重试问题,代码在此陷入递归死循环。基于有问题尽早抛出原则,建议移除 ErrorCode::UNKNOWN_TOPIC_OR_PARTITION 这个 case 分支,直接抛出异常。

anoxia avatar Aug 16 '23 06:08 anoxia

issue:#80 @limingxinleo

anoxia avatar Aug 16 '23 07:08 anoxia

@Yurunsoft 你觉得呢?

limingxinleo avatar Aug 16 '23 07:08 limingxinleo

时间有点久,记不太清了,建议测一下自动创建topic的情况

Yurunsoft avatar Aug 16 '23 07:08 Yurunsoft

我这边基于这个库做二次封装,写测试时发现了这个问题😂,就我测试而言以下两种情况均会导致死循环:

  1. kafka 禁用自动创建 Topic;
  2. 生产者/消费者禁用 autoCreateTopic 参数设置。

@Yurunsoft

anoxia avatar Aug 16 '23 07:08 anoxia

作为一个库要同时兼顾各种情况,要做到禁用和启用自动创建Topic都可以正常运行

Yurunsoft avatar Aug 16 '23 07:08 Yurunsoft

作为一个库要同时兼顾各种情况,要做到禁用和启用自动创建Topic都可以正常运行

赞同,以上说的两个问题在 kafka 开启允许自动创建 topic 并且消费者/生产者为禁用 autoCreateTopic 情况下工作正常,不会出现递归重试问题。

请大佬进一步验证。

anoxia avatar Aug 16 '23 07:08 anoxia