Seata 是一款开源的分布式事务解决方案,提供高性能和简单易用的分布式事务服务。
此版本更新如下:
特性:
- [#2200 ] 支持 postgresql (业务侧和 TC server)
- [#1746 ] 支持 httpClient 自动集成
- [#2240 ] 支持自定义 Saga 恢复策略超时时间
- [#1693 ] 支持 druid 类隔离加载,隔离中间件和业务侧的 druid 使用
- [#2245 ] 支持 zookeeper 鉴权
- [#2239 ] 支持 dubbo 2.7.4+
- [#2203 ] 支持 nacos 配置中心设置 group 属性
- [#2086 ] 支持 apollo 配置中心设置 namespace 属性
- [#2106 ] 支持 FastThreadLocalContextCore 存储事务上下文
- [#1703 ] 支持 sql parser SPI,提供 druid sql parser
- [#2151 ] 支持 Saga 模式跳过成功分支事务的 report
Bug 修复:
- [#2270 ] 修复 worker size 不支持枚举配置和其他配置问题
- [#2258 ] 修复 channelHandler 重连时 not sharable 问题
- [#2261 ] 修复定时任务启动但 ApplicationContext 未刷新问题
- [#2262 ] 修复 nacos 初始化脚本设置 group 错误问题
- [#2249 ] 修复 Saga 模式注册分支失败状态机状态错误问题
- [#2126 ] 修复表名和列名转义符错误问题
- [#2234 ] 修复使用 fastjson 反序列化 bigint 错误问题
- [#2237 ] 修复 DefaultCoordinatorTest 在 wins 测试错误问题
- [#2233 ] 修复使用 fastjson 忽略 tableMeta 失效问题
- [#2172 ] 修复使用 SpringCloudConfig 配置中心无法读取配置问题
- [#2217 ] 修复 seata-spring-boot-starter 错误配置名称
- [#2219 ] 修复 seata-spring-boot-starter 读取disableGlobalTransaction 配置错误问题
- [#2187 ] 修复有相同数据依赖的不同事务分支路由到不同server时回滚顺序错误问题
- [#2175 ] 修复 server direct buffer OOM 问题
- [#2210 ] 修复二阶段 commit 和 rollback 重试超时 globalSession 无法删除问题
- [#2179 ] 修复 redis 注册中心 db 属性转型错误问题
- [#2192 ] 修复 eureka getHostName() 返回 ipAddress 问题
- [#2198 ] 修复 rollback 超时无法自动删除全局锁问题
- [#2167 ] 修复 Saga 异步执行返回相同 id 问题
- [#2185 ] 修复 server 启动时 kubernetes 的判断条件
- [#2145 ] 修复 Saga 模式重试成功上报状态错误问题
- [#2113 ] 修复分支 rollback 失败触发多个 TC 重试导致的并发异常
优化:
- [#2255 ] 优化配置项的默认配置值
- [#2230 ] 统一配置项命名风格和保持 seata-all 和 spring boot starter相同默认值
- [#1935 ] 重构 client 和 server RPC
- [#2215 ] 优化 Saga 模式的超时处理
- [#2227 ] 分离 TC In/Outbound 接口
- [#2033 ] DefaultRemotingParser 逻辑优化
- [#1688 ] 减少客户端无用依赖
- [#2134 ] 按照事务模式区分 TC 逻辑重构
- [#2224 ] 优化 ContextCoreLoader 代码风格
- [#2171 ] 优化配置初始化同步脚本和添加使用说明
- [#2208 ] 使用 SPI LoadLevel name 代替 getDbType 接口方法
- [#2182 ] 优化 seata-spring-boot-starter 前缀判断逻辑
- [#2211 ] 优化 RootContext 代码风格
- [#2140 ] 优化 GzipUtil 代码风格
- [#2209 ] 重构 seata-discovery 模块,增加可读性
- [#2055 ] 使用 SPI 重构 tableMetaCache 和 undoLogManager
- [#2184 ] 重构 seata-config 模块,增加可读性
- [#2095 ] 重构数据源自动代理,区分 jdk 和 cglib 代理属性设置
- [#2178 ] Saga 状态机设计器添加默认 catch 节点
- [#2103 ] 优化 tcc 模块代码,增加可读性
- [#2125 ] 修改 MySQL recognizer package 路径
- [#2176 ] 修复 typos
- [#2156 ] 重构 sqlparser druid 名称为常量
- [#2170 ] 增加 seata common 模块的单测覆盖率
- [#2139 ] 优雅关闭 resources
- [#2097 ] 将 codec 模块重命名为 serializer 模块
- [#2159 ] 优化 spring 模块代码风格,增加可读性
- [#2036 ] 优化 Dubbo parser 逻辑
- [#2062 ] 优化 seata-rm-datasource 模块代码风格,增加可读性
- [#2146 ] 优化日志输出字符拼接
- [#2038 ] 优化 common 模块代码风格,增加可读性
- [#2120
- [#2078 ] 增加 oracle table meta cache 单测覆盖度
- [#2115
- [#2099 ] 优化 tm 模块代码风格,增加可读性
非常感谢以下 contributors 的代码贡献。若有无意遗漏,请报告。
- slievrly
- xingfudeshi
- objcoding
- long187
- zjinlei
- ggndnn
- lzf971107
- CvShrimp
- l81893521
- ph3636
- koonchen
- leizhiyuan
- a364176773
- caioguedes
- helloworlde
- wxbty
- bao-hp
- guojingyinan219
- CharmingRabbit
- jaspercloud
- jsbxyyx
同时,我们收到了社区反馈的很多有价值的issue和建议,非常感谢大家。
常用链接
Seata:
https://github.com/seata/seataSeata-Samples:
https://github.com/seata/seata-samplesRelease:
https://github.com/seata/seata/releasesSeata 官网:
https://seata.io/zh-cn/