欢迎已使用用户在此链接登记,便于我们更好的针对业务场景优化:https://github.com/seata/seata/issues/1246
Seata 1.7.0 定位为Seata重要的稳定性版本,大幅提升稳定性和鲁棒性,满足企业级大规模生产可用需求。同时对 native image 做了探索。
-
对现存的issue进行了深度的跟踪和解决。
-
对 JDK(8,11,17)、Spring(5.2.x,5.3.x,6.0. x)、Platform(amd64、arm64)进行了交叉兼容。
-
对低版本的conf配置进行了兼容适配。
-
对安全问题进行了深度治理。
-
更友好的日志格式,满足可观测性需求。
-
发布了针对针对不同需求的 docker image。
此次 release 共修改文件数:423,累计提交代码 +9103 −1910,合并PR 76个,共25人参与代码 commit 。
https://github.com/seata/seata/pull/5712
1.7.0 milestone:
https://github.com/seata/seata/milestone/23
seata-server:
https://github.com/seata/seata/releases/download/v1.7.0/seata-server-1.7.0.tar.gz
docker image:
https://hub.docker.com/repository/docker/seataio/seata-server
部署指南:
https://seata.io/zh-cn/docs/ops/deploy-guide-beginner.html
升级指南:
https://seata.io/zh-cn/docs/ops/upgrade.html 与低版本可平滑兼容。
版本的主要更新如下:
feature:
-
[#5476] Seata客户端侧支持
native-image
-
[#5495] 控制台集成Saga状态机设计器
-
[#5668] 兼容1.4.2及以下版本的file.conf/registry.conf配置
bugfix:
-
[#5682] 修复Saga模式下replay context丢失startParams问题
-
[#5671] 修复Saga模式下serviceTask入参autoType转化失败问题
-
[#5194] 修复使用Oracle作为服务端DB存储时的建表失败问题
-
[#5021] 修复 JDK17 下获取 Spring 原始代理对象失败的问题
-
[#5023] 修复
seata-core
模块传递依赖冲突 -
[#5224] 修复 Oracle初始化脚本索引名重复的问题
-
[#5233] 修复LoadBalance相关配置不一致的问题
-
[#5266] 修复控制台全局锁查询接口查到了已释放的锁
-
[#5245] 修复不完整的distribution模块依赖
-
[#5239] 修复当使用JDK代理时,
getConfig
方法获取部分配置时抛出ClassCastException
异常的问题 -
[#5281] 修复并行rm请求处理时数组索引越界问题
-
[#5288] 修复AT模式下oracle的主键列自增的问题
-
[#5287] 修复AT模式下PostgreSQL的主键列自增的问题
-
[#5299] 修复TC端重试回滚或重试提交超时GlobalSession的删除问题
-
[#5307] 修复生成update前后镜像SQL不转义问题
-
[#5311] 移除基于文件存储恢复时的RollbackRetryTimeout事务
-
[#4734] 修复AT模式下新增字段产生的字段找不到
-
[#5316] 修复JDK8 中 G1 参数
-
[#5321] 修复当TC端回滚返回RollbackFailed时,自定义FailureHandler的方法未执行
-
[#5332] 修复单元测试中发现的bug
-
[#5145] 修复Saga模式全局事务状态始终为Begin的问题
-
[#5413] 修复arm64平台下的JDK和Spring兼容问题
-
[#5415] 修复客户侧事务提交前超时未执行hook和failureHandler的问题
-
[#5447] 修复Oracle XA模式同服务多个相同数据库数据源问题
-
[#5472] 在RM中使用
@GlobalTransactional
时,如果RM执行失败会抛出ShouldNeverHappenException
-
[#5535] 修复读取logback文件路径错误的问题
-
[#5538] 修复提交事务时事务已完成不抛出异常问题
-
[#5539] 修复Oracle 10g where条件包含setDate全表扫描问题
-
[#5540] 修复GlobalStatus=9 在DB存储模式无法清除的问题
-
[#5552] 修复Mariadb回滚失败的问题
-
[#5583] 修复gRPCxid 解绑问题
-
[#5602] 修复participant情况下的重复日志
-
[#5645] 修复 Oracle 插入 undolog 失败问题
-
[#5659] 修复后镜像查询时增加关键字转义符导致数据库强制开启大小写校验引起的SQL异常
-
[#5663] 修复connectionProxyXA连接复用时timeout为null
-
[#5675] 修复 xxx.grouplist 和 grouplist.xxx 配置项兼容问题
-
[#5690] 修复控制台打印
unauthorized error
问题 -
[#5711] 修复取中划线配置项错误问题
optimize:
-
[#5208] 优化多次重复获取Throwable#getCause问题
-
[#5212] 优化不合理的日志信息级别
-
[#5237] 优化异常日志打印(EnhancedServiceLoader.loadFile#cahtch)
-
[#5089] 优化 TCC fence log 清理定时任务的 delay 参数值检查
-
[#5243] 升级 Kryo 5.4.0 优化对jdk17的兼容性
-
[#5153] 只允许AT去尝试跨RM获取channel
-
[#5177] 如果
server.session.enable-branch-async-remove
为真,异步删除分支,同步解锁。 -
[#5273] 优化
protobuf-maven-plugin
插件的编译配置,解决高版本的命令行过长问题 -
[#5303] 移除启动脚本的-Xmn参数
-
[#5325] 添加配置中心、注册中心类型以及存储模式日志信息
-
[#5315] 优化SPI加载日志
-
[#5323] 为全局事务超时日志添加时间信息
-
[#5414] 优化事务失败处理 handler
-
[#5537] 优化客户侧事务日志
-
[#5541] 优化Server日志输出
-
[#5548] 优化 gpg key 和 发布流水线
-
[#5638] 优化Server端事务隔离级别为读已提交
-
[#5646] 重构 ColumnUtils 和 EscapeHandler
-
[#5648] 优化Server日志输出
-
[#5647] 支持表和列元数据大小写敏感设置
-
[#5678] 优化大小写转义符
-
[#5684] 优化 CodeQL, skywalking-eyes 和 checkout 等 actions
-
[#5700] 优化分布式锁竞争日志
security:
-
[#5172] 修复一些安全漏洞的版本
-
[#5683] 增加Hessian 序列化黑白名单
-
[#5696] 修复若干Node.js依赖安全漏洞
test:
-
[#5380] 修复 UpdateExecutorTest 单测失败问题
-
[#5382] 修复多Spring版本测试失败
英文版参考:https://github.com/seata/seata/releases/tag/v1.7.0
致谢
非常感谢以下 contributors 的代码贡献。若有无意遗漏,请报告。
-
slievrly
-
xssdpgy
-
albumenj
-
PeppaO
-
yuruixin
-
dmego
-
CrazyLionLi
-
xingfudeshi
-
Bughue
-
pengten
-
wangliang181230
-
GoodBoyCoder
-
a364176773
-
isharpever
-
ZhangShiYeChina
-
mxsm
-
l81893521
-
liuqiufeng
-
yixia
-
jumtp
同时,我们收到了社区反馈的很多有价值的issue和建议,非常感谢大家。
常用链接:
Seata: https://github.com/seata/seata
Samples: https://github.com/seata/seata-samples
Release: https://github.com/seata/seata/releases
官网: https://seata.io
开发者招募:
如果您对Seata的前后端开发、测试和文档感兴趣,请您邮件联系:[email protected]