最近搭了两个项目,处理分布式事务的时候用到的RabbitMQ,发现在手动ACK的时候抛出了如下异常:
Channel shutdown: channel error; protocol method: #method
(reply-code=406, reply-text=PRECONDITION_FAILED – unknown delivery tag 1, class-id=60, method-id=80)
这个异常不影响代码的运行和结果,但是有个错误总归要解决。
这个异常其实是进行了2次ACK,检查代码后发现是自己粗心,消息生产者那设置了手动ACK,但是消费者只加了yml配置文件,没加RabbitMqConfig相关配置,可能是此原因导致消费端是自动ACK。最后在消费者端也配置了一遍,问题就解决了。