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

简介: 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.

相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
相关文章
Seata框架在AT模式下是如何保证数据一致性的?
通过以上这些机制的协同作用,Seata 在 AT 模式下能够有效地保证数据的一致性,确保分布式事务的可靠执行。你还可以进一步深入研究 Seata 的具体实现细节,以更好地理解其数据一致性保障的原理。
859 157
|
消息中间件 Java 数据库
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
这里 借助 Seata 集成 RocketMQ 事务消息的 新功能,介绍一下一个新遇到的面试题:如果如何实现 **强弱一致性 结合**的分布式事务?
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
|
数据库 微服务
SEATA模式
Seata 是一款开源的分布式事务解决方案,支持多种事务模式以适应不同的应用场景。其主要模式包括:AT(TCC)模式,事务分三阶段执行;TCC 模式,提供更灵活的事务控制;SAGA 模式,基于状态机实现跨服务的事务一致性;XA 模式,采用传统两阶段提交协议确保数据一致性。
439 5
|
Apache 开发者
Apache Seata 如何解决 TCC 模式的幂等、悬挂和空回滚问题
【6月更文挑战第8天】Apache Seata 是一款分布式事务框架,解决TCC模式下的幂等、悬挂和空回滚问题。通过记录事务状态处理幂等,设置超时机制避免悬挂,明确标记Try操作成功来处理空回滚。Seata 提供丰富配置和管理功能,确保分布式事务的可靠性和效率,支持复杂事务处理场景,为企业业务发展提供支持。
848 7
|
存储 Java Nacos
Seata常见问题之xa模式出现错误xid is not valid如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
659 4
|
NoSQL Java 数据库
Seata常见问题之xa模式下插入一条数据再更新这条数据会报错如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
429 2
|
Dubbo 关系型数据库 MySQL
Seata常见问题之serviceA方法无法注册分支事务到Seata如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
|
Java 关系型数据库 微服务
Seata常见问题之项目一直启动不成功如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
1379 0
|
SQL 监控 Java
Seata常见问题之报找不到全局事务可能已经完成如何解决
Seata 是一个开源的分布式事务解决方案,旨在提供高效且简单的事务协调机制,以解决微服务架构下跨服务调用(分布式场景)的一致性问题。以下是Seata常见问题的一个合集
2404 0
|
Java 数据库
在Java中使用Seata框架实现分布式事务的详细步骤
通过以上步骤,利用 Seata 框架可以实现较为简单的分布式事务处理。在实际应用中,还需要根据具体业务需求进行更详细的配置和处理。同时,要注意处理各种异常情况,以确保分布式事务的正确执行。

热门文章

最新文章