RabbitMQ报错Execution of Rabbit message listener failed
可以发现数据库操作时有一个字段为null,是没有设置默认值导致了报错,于是联想到MySQL操作和RabbitMQ之间的关系,想到了onMsg方法中的调用的checkAndCreateUserCouponNew是开启了事务的,如图。在发送消息到MQ,然后消费者收到消息后进行处理时发生了这样的报错。所以原因是消费者在消费消息的时候启用了事务,但是事务失败回滚了,所以导致了MQ的消息消费失败,于是又开始
·
情况描述
报错如图所示
在发送消息到MQ,然后消费者收到消息后进行处理时发生了这样的报错。而图中PromotionMqHandler处理的内容就是调用onMsg方法将数据保存到数据库。
问题分析
首先我下意识的就认为是不是MQ哪些地方写错了。
但是检查后无果。
于是我查看下面还有一个关于MySQL的报错如图。
可以发现数据库操作时有一个字段为null,是没有设置默认值导致了报错,于是联想到MySQL操作和RabbitMQ之间的关系,想到了onMsg方法中的调用的checkAndCreateUserCouponNew是开启了事务的,如图
所以原因是消费者在消费消息的时候启用了事务,但是事务失败回滚了,所以导致了MQ的消息消费失败,于是又开始重试。
更多推荐
已为社区贡献1条内容
所有评论(0)