kafka生产者报错CORRUPT_MESSAGE

无所谓 发表于: 2019-12-25   最后更新时间: 2019-12-25  

kafka生产者时不时报这个错

spark-streaming-kafka-0-10_2.11 用spark处理数据,对某些符合条件的数据发送到kafka

 producer.send(new ProducerRecord<String,Notify>(topic, data), (metaData, exception) -> {
    if (exception != null) {
       log.error(exception)
     }
 });

错误信息

screenshot



您需要解锁本帖隐藏内容请: 点击这里
本帖隐藏的内容




上一条: kafka consumer取数据卡顿
下一条: This message has failed its CRC checksum, exceeds the valid size, or is otherwise corrupt

  • 这个错误一般是压缩策略为cleanup.policy=compact的情况下,key不能为空额。

    • 把相同的key进行压缩。

      $ kafka-topics --create --zookeeper "zookeeper-0.zookeeper" --partitions 1 --replication-factor 1 --topic topicB --config cleanup.policy=compact
      Created topic "topicB".
      
      $ kafka-topics --describe --zookeeper "zookeeper-0.zookeeper" --topic topicB
      Topic:topicB    PartitionCount:1    ReplicationFactor:1    Configs:cleanup.policy=compact
          Topic: topicB    Partition: 0    Leader: 1    Replicas: 1    Isr: 1
      

      你描述下那个topic,看看是否有这个策略。

        • 这么奇怪,而且就topic中的某一个分区才有问题。
          我记得之前有看到kafka 0.10和0.11有类似的bug。

          我不知道该怎么解决了。