Seata 1.7.0 正式发布,大幅度提升稳定性


使便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 −1910PR 7625 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]


相關推薦

2022-12-20

Seata 1.6.0 Seata 1.6.0 发布 Seata 是一款开源的分布式事务解决方案,提供高性能和简单易用的分布式事务服务。 此版本更新如下: feature: [#4863] 支持 oracle 和 postgresql 多主键 [#4649] seata-server支持多注册中心 [#4779] 支持 Apach

2023-02-15

Gateway 使用下的响应式路由操作。 修复了一些bug,提升稳定性。 欢迎大家使用体验、Star、Fork、Issue,也欢迎大家参与 Spring Cloud Tencent 开源共建! 仓库地址:https://github.com/Tencent/spring-cloud-tencent 项目文档:https://github.com/Te

2024-10-19

已正式发布,与上一个主要版本相比,Unity 6 大幅提升了稳定性和性能,并且为所有 Unity 客户提供更强大的支持。 这是一个 LTS 版本,官方承诺在下一个主要版本发布后至少再提供两年的支持服务。 Unity 6 还引入了全新的版本

2024-08-27

池 采用 HikariCP Spring官方内置连接池 配置简单 以性能与稳定性闻名天下 采用 druid bug众多 社区维护差 活跃度低 配置众多繁琐性能一般 数据库主键 采用 雪花ID 基于时间戳的 有序增长 唯一ID 再也不用为分库分表 数据合

2022-11-04

ceanBase 4.0经历了内外部客户的场景测试与真实业务场景的稳定性打磨。 云栖大会上被宣布正式上线的OceanBase 社区版 4.0与企业版拥有同等性能。测试环境最小支持2C8G,生产环境最小支持4C16G,在性能上有大幅提升。经测试,Ocean

2022-06-01

Seata 1.5.1 正式发布。 发布概览 主要新增特性:支持用户控制台,支持Skywalking tracing集成,支持bRPC、EDAS Hsf, 支持 kotlin 协程,支持 TCC幂等/空回滚/防悬挂,支持分布式任务调度,支持 Redis 存储lua模式,支持ON DUPLICATE KEY UPDATE 等

2023-06-08

 Seata-go 1.2.0 已正式发布。 Seata 是一个非常成熟的分布式事务框架,在 Java 领域是事实上的分布式事务技术标准平台。Seata-go 是 seata 多语言生态中的 Go 语言实现版本,实现了 Java 和 Go 之间的互通,让 Go 开发者也能使用 se

2023-11-16

列表显示,2023 年 10 月 29 日,分布式事务开源项目 Seata 正式通过 Apache 基金会的投票决议,正式成为 Apache 孵化器项目。 Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务

2024-07-17

安装包从v3版本的2.7GB减小至1GB。JumpServer企业版则在保持稳定性和安全性的基础上,安装包体积大小控制在3GB左右。 4. 新增系统组件监控功能 在JumpServer v4.0版本中,为了能够让管理员以更简便的方式查看更多后台信息,JumpServe

2023-11-16

池 采用 HikariCP Spring官方内置连接池 配置简单 以性能与稳定性闻名天下 采用 druid bug众多 社区维护差 活跃度低 配置众多繁琐性能一般 数据库主键 采用 雪花ID 基于时间戳的 有序增长 唯一ID 再也不用为分库分表 数据合

2023-08-04

了 1.0.4 版本的研发中,在本次版本中,我们对 StoneDB 的稳定性做了大幅的优化提升,新增了一些实用特性并修复了一批已知Bug,欢迎大家前往 Github/Gitee 下载体验: Github: https://github.com/stoneatom/stonedb/releases/tag/5.7-v1.0.4-alpha Git

2024-04-04

Workload Group 支持对 Routine Load 的资源进行限制。 大幅度优化多表物化视图查询改写性能。 优化 Broker Load 任务对 FE 的内存使用 优化 Partition 的裁剪逻辑。 优化 Tablet Schema Cache 对 BE 内存使用。 多

2023-03-23

快。 通过简单修改可执行文件的名称就能改进性能和稳定性,也表明 AMD 的驱动程序对某些功能或优化使用了「硬编码」的进程名称列表,而 Yandex 的浏览器并不在该列表中。 Yandex 目前已经联系了 AMD,要求将他们的浏览器也

2023-07-15

PingCAP 联合创始人兼 CTO 黄东旭 无论技术世界如何变化,稳定性、性能、高可用、易用性与工具生态,一直都是用户对数据库的重要诉求。PingCAP 联合创始人兼 CTO 黄东旭在“面向未来的数据库”的主题演讲中指出,下一代数据