Seata中1.4.2及以下版本回滚时抛出Cannot construct instance of java.time.LocalDateTime
是什么原因呢?
A: 升级1.5.0及以上版本 B: 不要使用mysql driver8.0.x版本 C: 引入kryo相关依赖
com.esotericsoftware
kryo
4.0.2
de.javakaffee
kryo-serializers
0.42
如果配置中心是file,依赖是seata-all,请在应用的file.conf文件中添加如下配置 client { undo { logSerialization = "kryo" } } 如果配置中心是file,依赖是seata-spring-boot-starter,使用yml 自行转成yml格式即可 seata.client.undo.logSerialization=kryo 如果是第三方配置中心如nacos 请在seata使用的配置相关group,namespace上添加dataid: client.undo.logSerialization,值为kryo D: 修改数据库表中的datetime类型为timestamp E: 参考此pr做法,可以用类覆盖或SPI方式扩展新的解析方式处理。此答案整理自钉钉群“3群-Seata 开源讨论群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。