org.apache.kafka.common.errors.TimeoutException: org.apache.kafka.common.errors.TimeoutException: Timeout expired after 60000milliseconds while awaiting InitProducerId

今天kafka集群坏了一块硬盘,导致flink疯狂重启, 找到报错如下:

org.apache.kafka.common.errors.TimeoutException: org.apache.kafka.common.errors.TimeoutException: Timeout expired after 60000milliseconds while awaiting InitProducerId
Caused by: org.apache.kafka.common.errors.TimeoutException: Timeout expired after 60000milliseconds while awaiting InitProducerId

经过一天的排查, 发现是kafka事务出现了问题,详细的暂时不了解,只知道flink事务可能由 sink-name + UUID组成, 按道理说重启flink刷新UUID就能解决的, 可是并没有。
这里有两种解决方案

  • 关闭kafka事务
  • 修改sink-name
    采用第二种方案解决。

本次kafka生产事故总结:kafka所在服务器最好采用raid5磁盘阵列,至少坏一块盘还能用, 不然像今天这样就有点悲剧了数据给整丢了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐