Seata 1.2.0 重磅发布,支持 XA 事务模式

本文涉及的产品
云原生网关 MSE Higress,422元/月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: Seata 1.2.0 Seata 1.2.0 发布。 Seata 是一款开源的分布式事务解决方案,提供高性能和简单易用的分布式事务服务。 此版本更新如下: feature: [#2381] 支持 XA 事务模式 [#2206] 支持 REQUIRED、REQUIRES_NEW、SUPPOR.

Seata 1.2.0

Seata 1.2.0 发布。

Seata 是一款开源的分布式事务解决方案,提供高性能和简单易用的分布式事务服务。

此版本更新如下:

feature:

  • [#2381] 支持 XA 事务模式
  • [#2206] 支持 REQUIRED、REQUIRES_NEW、SUPPORTS 和 NOT_SUPPORTED 事务传播模式
  • [#2112] 支持 SQL 的批量更新和批量删除
  • [#2275] TCC 模式支持 HSF 调用
  • [#2108] 支持 zip、bzip2、7z 压缩
  • [#2328] server 支持 mysql5.x 和 mysql8.x 类隔离加载
  • [#2367] 支持 Nacos 1.2 权限配置.
  • [#2359] 支持 NEVER、MANDATORY 事务传播模式 和 事务挂起恢复 API.
  • [#2418] 支持 fst 序列化.
  • [#2135] 支持 SPI 定义 scope.
  • [#2370] 支持 failureHandler 从 Spring 容器注入.
  • [#2481] 支持数据库连接池的 max-wait 配置.
  • [#2379] 支持使用 Nacos 注册服务时自定义服务名.
  • [#2308] 增加 Saga 模式是否注册分支的开关.
  • [#2301] 支持 postgresql 的 default 和 nextval 语法支持.

bugfix:

  • [#2575] 修复 executeBatch 无法获取 targetSql 问题.
  • [#2283] 修复 oracle 获取 tableMeta 失败问题.
  • [#2312] 修复 SeataDataSourceBeanPostProcessor 启动判断条件.
  • [#2309] 修复数据库 timestamp 类型反序列化丢失 nano 精度问题.
  • [#2292] 修复一些未转驼峰风格的配置项.
  • [#2306] 修复 maven-enforcer-plugin 打包版本的限制.
  • [#2287] 修复全局锁重试时 connection context 未移除问题.
  • [#2361] 修复错误的配置项名称.
  • [#2333] 修复由于脏写导致回滚失败错误的日志输出.
  • [#2390] 修复同步脚本中配置项对于含有空格的处理.
  • [#2408] 修复 postgresql undo_log 建表脚本缺少 sequence.
  • [#2391] 修复获取配置异常导致的 CPU 飙升问题.
  • [#2427] 修复 debug时 调用StringUtils.toString(o) 栈溢出问题.
  • [#2384] 修复 Saga模式 StateMachineRepository#getStateMachineById 方法会覆盖内存中缓存的最新版本的状态机定义问题.
  • [#2323] 修复数据源自动代理问题.
  • [#2466] 修复文件存储模式多线程变量可见性问题.
  • [#2349] 修复批量 insert 不同主键类型检查.
  • [#2479] 修复postgresql schema 非小写问题.
  • [#2449] 修复 server 启动时无法获取表结构问题.
  • [#2505] 修复 session store 路径判断条件.
  • [#2456] 修复 server 极端异常情况下编码错误问题.
  • [#2495] 修复 NPE 和减少lockKey 为 null 时的分支注册请求.
  • [#2490] 修复 RpcContext.addResource 参数为 null 的处理判断.
  • [#2419] 修复 http 部分的集成测试失败问题.
  • [#2535] 修复 config.txt 中错误的配置名称.
  • [#2524] 修复客户端注册服务名配置冗余导致的配置不一致问题.
  • [#2473] 修复文件存储模式刷盘条件的判断逻辑.
  • [#2455] 修复子模块下无法执行copyright 和 checkstyle maven 插件问题.

optimize:

  • [#2409] 当 undolog 和 lockKey 为空时减少不必要的db 和 server 交互.
  • [#2329] 按照不同的存储模式重构抽象相关逻辑.
  • [#2354] 优化 spring cloud config 不支持 listener 的逻辑.
  • [#2320] 优化 protostuff 和 kryo 序列化 timestamp 类型的逻辑,提升序列化性能.
  • [#2307] 优化事务模式切换时的事务上下文逻辑.
  • [#2364] 优化启动时不必要的类初始化加载.
  • [#2368] 增加zk 作为注册中心和配置中心缺少的配置属性.
  • [#2351] 增加获取本地全局事务状态的接口.
  • [#2529] 优化 druid 连接池参数.
  • [#2288] 忽略 mock 测试部分的单元测试覆盖度.
  • [#2297] 移除重复 pom 依赖.
  • [#2336] 添加使用用户的 logo.
  • [#2348] 去除重复的配置项.
  • [#2362] 优化按频率打印堆栈 stackTraceLogger 的方法.
  • [#2382] 优化 RegistryFactory 为单例模式 和 RegistryType 的判断逻辑.
  • [#2400] 优化 UUIDGenerator 的魔数逻辑.
  • [#2397] 修复 typo.
  • [#2407] 修复可能导致 NPE 的逻辑.
  • [#2402] 优化 RM 和 TM 的注册日志.
  • [#2422] 增加文档的 script 链接.
  • [#2440] 优化联系我们和启动日志.
  • [#2445] 优化 kryo 和 fst 的注册方法.
  • [#2372] 将 lock store sql 重构为 SPI 实现.
  • [#2453] 优化不必要的 server 配置项
  • [#2369] 将 log store sql 重构为 SPI 实现.
  • [#2526] 优化 seata-spring-boot-starter 的启动日志.
  • [#2530] 移除 netty 的 connPool.
  • [#2489] 优化 exceptionHandler 的方法签名.
  • [#2494] 移除不必要的代码.
  • [#2523] server 按照频率输出不正常事务的异常详细堆栈信息.
  • [#2549] 优化 ZookeeperConfiguration 日志级别和异常信息不打印的问题
  • [#2558] 规范统一 config 和 server 模块的日志.
  • [#2464] 增强 Saga 状态流程设计器.
  • [#2553] 增加使用同步脚本的一些说明.

Thanks to these contributors for their code commits. Please report an unintended omission.

Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.

Link.

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
5月前
|
自然语言处理 监控 Dubbo
Seata常见问题之使用tcc模式配置yml如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
189 4
|
4天前
|
消息中间件 Java 数据库
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
这里 借助 Seata 集成 RocketMQ 事务消息的 新功能,介绍一下一个新遇到的面试题:如果如何实现 **强弱一致性 结合**的分布式事务?
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
|
5月前
|
监控 数据库
在Seata中一张表使用了联合主键,在事务回滚时报异常,改为单个主键,就没有这个异常,如何解决?
在Seata中一张表使用了联合主键,在事务回滚时报异常,改为单个主键,就没有这个异常,如何解决?
|
4月前
|
Apache 开发者
Apache Seata 如何解决 TCC 模式的幂等、悬挂和空回滚问题
【6月更文挑战第8天】Apache Seata 是一款分布式事务框架,解决TCC模式下的幂等、悬挂和空回滚问题。通过记录事务状态处理幂等,设置超时机制避免悬挂,明确标记Try操作成功来处理空回滚。Seata 提供丰富配置和管理功能,确保分布式事务的可靠性和效率,支持复杂事务处理场景,为企业业务发展提供支持。
190 7
|
5月前
|
存储 Java Nacos
Seata常见问题之xa模式出现错误xid is not valid如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
174 4
|
5月前
|
Dubbo 关系型数据库 MySQL
Seata常见问题之serviceA方法无法注册分支事务到Seata如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
|
5月前
|
NoSQL Java 数据库
Seata常见问题之xa模式下插入一条数据再更新这条数据会报错如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
171 2
|
5月前
|
Java 关系型数据库 微服务
Seata常见问题之项目一直启动不成功如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
467 0
|
5月前
|
SQL 监控 Java
Seata常见问题之报找不到全局事务可能已经完成如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
928 0
|
1月前
|
SQL NoSQL 数据库
SpringCloud基础6——分布式事务,Seata
分布式事务、ACID原则、CAP定理、Seata、Seata的四种分布式方案:XA、AT、TCC、SAGA模式
SpringCloud基础6——分布式事务,Seata