Apache Seata (Incubating) 2.7.0 (RC)
Apache Seata (Incubating) 2.7.0 Release Candidate.
Git tag: v2.7.0 @ 49fef81747c3f7afd9ec0ae054e5a4aece83e5ac
Source / Binary (ASF SVN dev): https://dist.apache.org/repos/dist/dev/incubator/seata/2.7.0/
Maven staging (closed): https://repository.apache.org/content/repositories/orgapacheseata-1269/
CI: https://github.com/apache/incubator-seata/actions?query=branch%3A2.7.0+event%3Apush
This is a pre-release / RC for community and incubator voting. Do not treat as the final Apache release until votes pass and artifacts are promoted.
- Benchmark CLI 2.0:支持 AT / XA / TCC / SAGA_ANNOTATION,含 P99.9 延迟统计
- NamingServer 可观测性:Metrics + Grafana 仪表盘
- JSON 安全与统一:反序列化白名单、Jackson/fastjson 统一、fastjson2/jackson3 序列化器
- 客户端注销资源:关闭 DataSourceProxy 时向 TC 发送注销通知(含 protobuf)
- Raft Watch:HTTP/2 流推送 + HTTP 协议动态切换
- 虚拟线程:全局虚拟线程切换(#8023)
- 依赖与安全:tomcat 升级、console/saga npm 依赖精简、p3c 替换为 checkstyle 增量检查
- #7865 Benchmark 命令行工具
- #8094 Benchmark XA 模式
- #8062 Benchmark 真实 TCC 模式
- #8052 Benchmark SAGA_ANNOTATION 模式
- #8014 Benchmark P99.9 延迟
- #7882 NamingServer Metrics
- #7760 统一 Jackson/fastjson 序列化
- #7000 多版本 codec + 注册失败原因返回
- #7973 JSON 反序列化白名单
- #7903 Raft Watch HTTP/2 流推送
- #8002 NamingServer Grafana 仪表盘
- #8020 客户端资源注销通知
- #8044 注销协议 protobuf 序列化
- #8046 fastjson2 / jackson3 序列化器
- #7952 Raft Watch HTTP 协议动态切换
- #8090 配置忽略的网络接口
- #7929 Kingbase undo log SQL
- #7940 Jakarta 包路径
- #7960 控制台 API bean
- #7956 JDK17+ JaCoCo 空报告
- #7965 DM/Kingbase 主键索引识别
- #7981 DataSourceProxy 关闭资源泄漏
- #7992 分支事务状态缺少 branch type
- #8035 GET 带 body 的 IllegalArgumentException
- #8078 MySQL undo log 序列化
- #8106 AOT 代理 NPE
- #8113 控制台导出 JSON/下载
- #8118 rollback 校验查询显式列
- #8124 批量插入 SQL 函数 PK 提取
- 默认 JSON 栈向 Jackson 收敛,使用 fastjson1 自定义配置需评估迁移
- 虚拟线程可通过配置全局开启,JDK 版本需满足项目要求
- tomcat-embed-core 升级至 9.0.117
- Tag commit:
49fef81747c3f7afd9ec0ae054e5a4aece83e5ac(v2.7.0, includes #8184) - Branch: https://github.com/apache/incubator-seata/tree/2.7.0
- Full changelog: https://github.com/apache/incubator-seata/blob/2.7.0/changes/zh-cn/2.x.md
Apache Seata (Incubating) 2.7.0 (RC)
Apache Seata (Incubating) 2.7.0 Release Candidate.
Git tag: v2.7.0 @ 49fef81747c3f7afd9ec0ae054e5a4aece83e5ac
Source / Binary (ASF SVN dev): https://dist.apache.org/repos/dist/dev/incubator/seata/2.7.0/
Maven staging (closed): https://repository.apache.org/content/repositories/orgapacheseata-1269/
CI: https://github.com/apache/incubator-seata/actions?query=branch%3A2.7.0+event%3Apush
This is a pre-release / RC for community and incubator voting. Do not treat as the final Apache release until votes pass and artifacts are promoted.
- Benchmark CLI 2.0:支持 AT / XA / TCC / SAGA_ANNOTATION,含 P99.9 延迟统计
- NamingServer 可观测性:Metrics + Grafana 仪表盘
- JSON 安全与统一:反序列化白名单、Jackson/fastjson 统一、fastjson2/jackson3 序列化器
- 客户端注销资源:关闭 DataSourceProxy 时向 TC 发送注销通知(含 protobuf)
- Raft Watch:HTTP/2 流推送 + HTTP 协议动态切换
- 虚拟线程:全局虚拟线程切换(#8023)
- 依赖与安全:tomcat 升级、console/saga npm 依赖精简、p3c 替换为 checkstyle 增量检查
- #7865 Benchmark 命令行工具
- #8094 Benchmark XA 模式
- #8062 Benchmark 真实 TCC 模式
- #8052 Benchmark SAGA_ANNOTATION 模式
- #8014 Benchmark P99.9 延迟
- #7882 NamingServer Metrics
- #7760 统一 Jackson/fastjson 序列化
- #7000 多版本 codec + 注册失败原因返回
- #7973 JSON 反序列化白名单
- #7903 Raft Watch HTTP/2 流推送
- #8002 NamingServer Grafana 仪表盘
- #8020 客户端资源注销通知
- #8044 注销协议 protobuf 序列化
- #8046 fastjson2 / jackson3 序列化器
- #7952 Raft Watch HTTP 协议动态切换
- #8090 配置忽略的网络接口
- #7929 Kingbase undo log SQL
- #7940 Jakarta 包路径
- #7960 控制台 API bean
- #7956 JDK17+ JaCoCo 空报告
- #7965 DM/Kingbase 主键索引识别
- #7981 DataSourceProxy 关闭资源泄漏
- #7992 分支事务状态缺少 branch type
- #8035 GET 带 body 的 IllegalArgumentException
- #8078 MySQL undo log 序列化
- #8106 AOT 代理 NPE
- #8113 控制台导出 JSON/下载
- #8118 rollback 校验查询显式列
- #8124 批量插入 SQL 函数 PK 提取
- 默认 JSON 栈向 Jackson 收敛,使用 fastjson1 自定义配置需评估迁移
- 虚拟线程可通过配置全局开启,JDK 版本需满足项目要求
- tomcat-embed-core 升级至 9.0.117
- Tag commit:
49fef81747c3f7afd9ec0ae054e5a4aece83e5ac(v2.7.0, includes #8184) - Branch: https://github.com/apache/incubator-seata/tree/2.7.0
- Full changelog: https://github.com/apache/incubator-seata/blob/2.7.0/changes/zh-cn/2.x.md
superset-helm-chart-0.22.3
Apache Superset is a modern, enterprise-ready business intelligence web application
v3.7.1
Please check out CHANGELOG for a full list of changes. And make sure to read upgrade guide before upgrading etcd (there may be breaking changes).
For installation guides, please check out operating etcd. Latest support status for common architectures and operating systems can be found at supported platforms.
ETCD_VER=v3.7.1
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1 --no-same-owner
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
# start a local etcd server
/tmp/etcd-download-test/etcd
# write,read to etcd
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo
ETCD_VER=v3.7.1
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-darwin-amd64.zip -o /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
unzip /tmp/etcd-${ETCD_VER}-darwin-amd64.zip -d /tmp && rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/etcd-download-test && rm -rf mv /tmp/etcd-${ETCD_VER}-darwin-amd64
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
etcd uses gcr.io/etcd-development/etcd as a primary container registry, and quay.io/coreos/etcd as secondary.
ETCD_VER=v3.7.1
rm -rf /tmp/etcd-data.tmp && mkdir -p /tmp/etcd-data.tmp && \
docker rmi gcr.io/etcd-development/etcd:${ETCD_VER} || true && \
docker run \
-p 2379:2379 \
-p 2380:2380 \
--mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
--name etcd-gcr-${ETCD_VER} \
gcr.io/etcd-development/etcd:${ETCD_VER} \
/usr/local/bin/etcd \
--name s1 \
--data-dir /etcd-data \
--listen-client-urls http://0.0.0.0:2379 \
--advertise-client-urls http://0.0.0.0:2379 \
--listen-peer-urls http://0.0.0.0:2380 \
--initial-advertise-peer-urls http://0.0.0.0:2380 \
--initial-cluster s1=http://0.0.0.0:2380 \
--initial-cluster-token tkn \
--initial-cluster-state new \
--log-level info \
--logger zap \
--log-outputs stderr
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcd --version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdutl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl endpoint health
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl put foo bar
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl get foo
v3.6.14
Please check out CHANGELOG for a full list of changes. And make sure to read upgrade guide before upgrading etcd (there may be breaking changes).
For installation guides, please check out operating etcd. Latest support status for common architectures and operating systems can be found at supported platforms.
ETCD_VER=v3.6.14
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1 --no-same-owner
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
# start a local etcd server
/tmp/etcd-download-test/etcd
# write,read to etcd
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo
ETCD_VER=v3.6.14
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-darwin-amd64.zip -o /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
unzip /tmp/etcd-${ETCD_VER}-darwin-amd64.zip -d /tmp && rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/etcd-download-test && rm -rf mv /tmp/etcd-${ETCD_VER}-darwin-amd64
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
etcd uses gcr.io/etcd-development/etcd as a primary container registry, and quay.io/coreos/etcd as secondary.
ETCD_VER=v3.6.14
rm -rf /tmp/etcd-data.tmp && mkdir -p /tmp/etcd-data.tmp && \
docker rmi gcr.io/etcd-development/etcd:${ETCD_VER} || true && \
docker run \
-p 2379:2379 \
-p 2380:2380 \
--mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
--name etcd-gcr-${ETCD_VER} \
gcr.io/etcd-development/etcd:${ETCD_VER} \
/usr/local/bin/etcd \
--name s1 \
--data-dir /etcd-data \
--listen-client-urls http://0.0.0.0:2379 \
--advertise-client-urls http://0.0.0.0:2379 \
--listen-peer-urls http://0.0.0.0:2380 \
--initial-advertise-peer-urls http://0.0.0.0:2380 \
--initial-cluster s1=http://0.0.0.0:2380 \
--initial-cluster-token tkn \
--initial-cluster-state new \
--log-level info \
--logger zap \
--log-outputs stderr
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcd --version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdutl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl endpoint health
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl put foo bar
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl get foo
8.6.5
SECURITY: There are security fixes in the release.
- A crafted stream RESTORE payload can make two consumers share the same NACK, leading to a use-after-free that may result in Remote Code Execution
- RedisBloom/RedisBloom#1046 Crafted RESTORE payloads in RedisBloom and TDigest may trigger out-of-bounds writes, potentially leading to remote code execution
- RedisBloom/RedisBloom#1021 Replicate
CF.LOADCHUNKdata chunks to prevent silent Cuckoo Filter data loss on failover
v3.5.33
Please check out CHANGELOG for a full list of changes. And make sure to read upgrade guide before upgrading etcd (there may be breaking changes).
For installation guides, please check out operating etcd. Latest support status for common architectures and operating systems can be found at supported platforms.
ETCD_VER=v3.5.33
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1 --no-same-owner
rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
# start a local etcd server
/tmp/etcd-download-test/etcd
# write,read to etcd
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 put foo bar
/tmp/etcd-download-test/etcdctl --endpoints=localhost:2379 get foo
ETCD_VER=v3.5.33
# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GOOGLE_URL}
rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test
curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-darwin-amd64.zip -o /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
unzip /tmp/etcd-${ETCD_VER}-darwin-amd64.zip -d /tmp && rm -f /tmp/etcd-${ETCD_VER}-darwin-amd64.zip
mv /tmp/etcd-${ETCD_VER}-darwin-amd64/* /tmp/etcd-download-test && rm -rf mv /tmp/etcd-${ETCD_VER}-darwin-amd64
/tmp/etcd-download-test/etcd --version
/tmp/etcd-download-test/etcdctl version
/tmp/etcd-download-test/etcdutl version
etcd uses gcr.io/etcd-development/etcd as a primary container registry, and quay.io/coreos/etcd as secondary.
ETCD_VER=v3.5.33
rm -rf /tmp/etcd-data.tmp && mkdir -p /tmp/etcd-data.tmp && \
docker rmi gcr.io/etcd-development/etcd:${ETCD_VER} || true && \
docker run \
-p 2379:2379 \
-p 2380:2380 \
--mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
--name etcd-gcr-${ETCD_VER} \
gcr.io/etcd-development/etcd:${ETCD_VER} \
/usr/local/bin/etcd \
--name s1 \
--data-dir /etcd-data \
--listen-client-urls http://0.0.0.0:2379 \
--advertise-client-urls http://0.0.0.0:2379 \
--listen-peer-urls http://0.0.0.0:2380 \
--initial-advertise-peer-urls http://0.0.0.0:2380 \
--initial-cluster s1=http://0.0.0.0:2380 \
--initial-cluster-token tkn \
--initial-cluster-state new \
--log-level info \
--logger zap \
--log-outputs stderr
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcd --version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdutl version
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl endpoint health
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl put foo bar
docker exec etcd-gcr-${ETCD_VER} /usr/local/bin/etcdctl get foo
8.4.5
SECURITY: There are security fixes in the release.
- Use-after-free when loading a stream consumer group via
RESTOREmay lead to Remote Code Execution - RedisBloom/RedisBloom#1039 Crafted RESTORE payloads in RedisBloom and TDigest may trigger out-of-bounds writes, potentially leading to remote code execution
- RedisBloom/RedisBloom#1020 Replicate
CF.LOADCHUNKdata chunks to prevent silent Cuckoo Filter data loss on failover
8.2.8
SECURITY: There are security fixes in the release.
- Use-after-free when loading a stream consumer group via
RESTOREmay lead to Remote Code Execution - RedisBloom/RedisBloom#1041 Crafted RESTORE payloads in RedisBloom and TDigest may trigger out-of-bounds writes, potentially leading to remote code execution
- RedisBloom/RedisBloom#1019 Replicate
CF.LOADCHUNKdata chunks to prevent silent Cuckoo Filter data loss on failover