RocketMQ RMQ_SYS_TRANS_HALF_TOPIC 爆掉的问题
现象
SaaS项目东郭反应,项目中发的事务消息一直在RMQ_SYS_TRANS_HALF_TOPIC
中,并且不断增长。随即我们查看RocketMQ日志发现如下情况:
这个本来是RocketMQ正常的逻辑,发送事务消息后没有提交状态的话,当达到超时时间后,RocketMQ会回查本地事务状态。这里显示的是回查的次数超限,消息被移到了TRANS_CHECK_MAXTIME_TOPIC
中。
不正常的是REAL_TOPIC
变成了RMQ_SYS_TRANS_HALF_TOPIC
,正常应该是原始的业务消息TOPIC才对。于是我们带着这个问题开始排查起来。