天天看点

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

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.