开发者社区 > 云原生 > 中间件 > 正文

脏数据回滚失败如何处理?

脏数据回滚失败如何处理?

展开
收起
真的很搞笑 2023-03-18 17:55:54 455 0
2 条回答
写回答
取消 提交回答
  • A:

    脏数据需手动处理,根据日志提示修正数据或者将对应undo删除(可自定义实现FailureHandler做邮件通知或其他)

    关闭回滚时undo镜像校验,不推荐该方案。 注:建议事前做好隔离保证无脏数据,此回答整理自钉群“3群-Seata 开源讨论群”

    2023-03-22 10:13:46
    赞同 展开评论 打赏
  • 十年摸盘键,代码未曾试。 今日码示君,谁有上云事。

    脏数据需手动处理,根据日志提示修正数据或者将对应undo删除(可自定义实现FailureHandler做邮件通知或其他)

    关闭回滚时undo镜像校验,不推荐该方案。 注:建议事前做好隔离保证无脏数据。

    当数据写入rds或者hybridDB等一些支持事务的数据库中,数据批量写入,一旦由于各种原因没有写入成功,这个批次的数据会回滚重新写入,如果再次写入失败,就会报脏数据的错误导致任务失败。数据写入失败可能是以下原因导致回滚。 1,脏数据(数据值超过数据类型最大范围,数据类型不对应等等) 2,目标数据源字段设置,比如默认不允许为空 3,主键冲突 4,目标数据源本身负载太高,写入时死锁 5,同步的设置的速度太大,比如数据量很大,速度设为10M/s。

    发生系统故障或错误操作时,您可以使用快照回滚云盘,实现应用版本回退。回滚时,云盘必须拥有至少一份历史快照。支持回滚系统盘和数据盘,如果回滚的是系统盘,默认自动绑定实例当前的SSH密钥对或用户名密码。

    回滚云盘是不可逆操作,从快照的创建日期到回滚云盘时这段时间内的数据会丢失。为避免误操作,建议您在回滚前为云盘创建一份快照备份数据。

    2023-03-19 10:03:39
    赞同 1 展开评论 打赏
问答地址:

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载