raincat icon indicating copy to clipboard operation
raincat copied to clipboard

参与者handler中提交事务是若抛异常会导致数据不一致

Open lijianandwujie opened this issue 7 years ago • 2 comments

ActorTxTransactionHandler代码第160行"platformTransactionManager.commit(transactionStatus);"参与者提交事务时如果抛异常,当前事务回滚,在finally中删除了本地补偿信息,这样就导致了当前服务的数据丢失,其他服务数据正常入库,且当前服务无法进行补偿

lijianandwujie avatar Feb 12 '18 05:02 lijianandwujie

这种情况几率太小了,您认为不能在finally 里面删除,那应该在怎么处理好呢

yu199195 avatar May 28 '18 01:05 yu199195

这种情况几率太小了,您认为不能在finally 里面删除,那应该在怎么处理好呢

这种几率并不小,很多原因会导致最终commit的时候失败,比如MySQL服务端kill了连接等等...

niejunhao avatar Sep 14 '18 06:09 niejunhao