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.
- slievrly
- a364176773
- ph3636
- lightClouds917
- l81893521
- jsbxyyx
- objcoding
- CharmingRabbit
- xingfudeshi
- lovepoem
- SevenSecondsOfMemory
- zjinlei
- ggndnn
- tauntongo
- threefish
- helloworlde
- long187
- jaspercloud
- dk-lockdown
- wxbty
- sharajava
- ppj19891020
- YuKongEr
- Zh1Cheung
- wangwei-ying
- mxszs
- q294881866
- HankDevelop
Also, we receive many valuable issues, questions and advices from our community. Thanks for you all.
Link.
- Seata: https://github.com/seata/seata
- Seata-Samples: https://github.com/seata/seata-samples
- Release: https://github.com/seata/seata/releases
- WebSite: https://seata.io