-
Notifications
You must be signed in to change notification settings - Fork 8.8k
20240203
会议主持人:@王良(wangliang181230)
参会人(仅统计PPMC,其他参会人见附录):@清铭、@陈健斌、@王良、@亦夏、@刘月财
下次双周会:
- 时间:
2024/2/17
为春节放假,暂停一次。暂定为2024/3/2
。(如有时间变更,再另行通知,请订阅邮件列表:dev@seata.apache.org
、notifications@seata.apache.org
) - 主持人:@吴江坷(xingfudeshi)
-
库迁移范围讨论 @清铭 done
- seata-java,seata-go,k8s,ctl @董峻铎,官网,simple(java,go)
-
ASF ICLA contributor签署:@清铭
- 公开邮件模板 done
- 迁库后通过邮件的方式联系对应开发者 done
-
review邮件模板: @清铭
-
孵化进展同步 @清铭
- 法务问题已解决 done
- 已汇报apache秘书 done
-
补充文档:发展历史done、使用指南 @尹祥琨、配置文档拆分 @陈健斌、升级文档拆分 @陈健斌、部署文档拆分 @陈健斌。 @清铭 @尹祥琨 @陈健斌
- 使用指南拆分完成(完成, go待完成)
- 升级文档拆分完成(完成)
- 配置文档(完成)(健斌),部署文档✅
-
收集大于贡献100行的contributor信息追溯 @汪忠祥 done
- 已经发到钉钉群,有16个这种
@users.noreply.github.com
邮箱;和17个找不到邮箱的;
- 已经发到钉钉群,有16个这种
-
合规与安全。@刘秋枫 @清铭 done
- 默认语言已改为英文;done
- 官网已增加license check,依赖检查,licence,url更新;done
- 商业化链接已移除;done
- 维护者列表已移除;done
- 官网安全漏洞修复完毕;done
- 用户登记移除;done
- 注意事项:与apache其他仓库含代码大幅度相同的情况不被允许
-
百度搜索流量下跌问题(按照
seata.apache.org
,不是seata.io
)。@刘秋枫- ci自动生成
sitemap.xml
和site.txt
已完成 - 内容预渲染改造已完成
- api自动上报百度功能已完成,但百度给的额度很少
- ci自动生成
-
放弃语雀;历史文档迁移至wiki @刘月财 @亦夏 @开源之夏导师
- 散乱文档不迁移done
- 设计,课外资料等文档需要迁移(java,go 合并seata主仓库wiki存放)done
- 新建目录存放 (完成)
- 将summercode相关的文档迁移至对应目录下(今年的方案设计到结项优先); @陈健斌 @王良 @刘月财 done
- 设计文档/开源之夏,都迁移完了;周会的不用迁移,wiki给老的地址即可;
-
单测覆盖度目标 @张嘉伟 @汪忠祥
- seata-core @汪忠祥 done
- seata-common @张嘉伟 done
-
积压PR处置 @陈健斌 @刘月财
- java: 2022年5月之前的无人跟进的已经关闭,并且已经留言,除去部分重要的 (已完成)
-
1.8.0 + 2.0.0 文档、releaseNotes、samples更新。 @亦夏
- 1.8.0 + 2.0.0 releaseNotes done
- 邮件发出标准,同一个事务模式,一个业务场景; @亦夏 done
-
分支维护。维护计划公开文档。@蒋俊敏 done
- 按照版本来维护,只维护最近3个版本(含最新版本)merge,done
-
新老仓库兼容性方案。梳理API,@尹祥琨 (已梳理完成,待单独拉会沟通)
- 用户 api 梳理,saga完成 (12.9),done (12.23) @尹祥琨 done
-
兼容性测试(jdk、arch、spring core+boot、druid)@王良
- os, jdk, spring boot, 兼容性测试pr,已完成
- 分开workflow,提高并行度 ;先不用做了。
-
tcc 使用方式确认,是否需要兼容特殊使用方式 @亦夏 @李宗杰 (后续提相关pr跟进)
- 统一规范:java tcc注解 标准统一,统一打到实现类上,rm这个完成后,需要在文档透出,另外废弃LocalTcc注解,同样使用TwoPhase注解;done ss
-
百度搜索流量下跌问题(按照apache,不是seata io)。@刘秋枫
- 排名有上升,官网靠前了 done(老域名,已完成)
-
包迁移:
io.seata
->org.apache.seata
- 当前的pr尽快merge后,统一处理;@清铭 done 2/3
- 1.ppmc对apache政策,合规的了解,需要提高
- 2.尽量使用邮件,英文沟通
- 3.比赛报名,明天1.21截止(性能大赛 功能设计)大家踊跃参与
- 4.任务列表等,可以发到邮件组:
- 漏洞
-
合规与安全。@刘秋枫 @清铭 doing
- logo改造; @刘秋枫 done
- 英文博客;从0到1;翻译现有的即可;todo;@汪忠祥 已完成16篇,所有文章的标题占位符已添加,还剩30-40篇 @任原新,这两周完成了10多篇;(预计1~1.5个月完成)
- seata 41个前端安全漏洞 @清铭,待review merge,(2/3:剩余18个漏洞未处理)
- seata go 剩余5个漏洞 @亦夏 @刘月财 目标下周(全部修复完成)done
- seata sample 剩余125个 @亦夏 待启动,有前置依赖(PR已提交,建个新分支,先合进去,跑起来看看有没有问题)@清铭 待确认
- simple按新的格式在走的,代码规范需要兼容改造;@亦夏
-
https://github.com/apache/incubator-seata/discussions/6233 合规相关问题
- 外链:@刘秋枫 @清铭
- Apache Logo:Seata的Logo加上Apache元素。
- 基础工作基本完成:
- 下周第一期导师一侧验收,已发过邮件,导师看过,只剩上面讨论下的两个问题。
- 问题:官网文档域名未切换,首月slogan的seata介绍,起源部分改进;@清铭 @刘秋枫 done
- 部分页面301跳转出现 404 Not Found:@刘秋枫 @清铭
- 总体解决方案:@清铭
- 网关:
- Nginx:
- https://seata.apache.org/zh-cn/docs/overview/what-is-seata.html(已提交PR) @刘秋枫
- 总体解决方案:@清铭
- 集群中,添加一个节点时,需要校验该节点是否合法:@陈健斌(2/3 new)
-
百度搜索流量下跌问题(按照apache,不是seata io)。@刘秋枫
- 官网关键词优化(长期):前两周暂未处理,后面与提升页面体验分一起弄
- 提升页面体验分;todo(放二期;一期先关注合规;
- 跳转格式有问题,新域名下的链接手动提交修改,快速迁站流程。url mapping
- 百度搜索出来的官网的描述,内容优化,当前效果如下三个截图:(优先处理)
-
1.8.0 + 2.0.0 文档、releaseNotes、samples更新。 @亦夏
- java sample(未发布新版暂不需要升级), seata版本升级到2.0,公共逻辑优化, 进度完成7个,40%。(PR已提交,但还需优化)
-
新老仓库兼容性方案。梳理API,@尹祥琨 (已梳理完成,待单独拉会沟通)
- 状态机设计器框架 选型和基础框架 (12.9) 初版完成 (12.23) (PR已完成,待review;单独分支开发完毕后,再另外提交到2.x分支) @尹祥琨
-
日志优化:(总体进度:20%不到)(@清铭 PR已提交,能满足国际化的要求,打出的堆栈都有对应的errorCode,错误信息里会显示一个链接链到FAQ页面中。)
- 日志格式化输入:info、error (格式已经确定,各处的
log.error
等替换为新的 todo); - error code 已提pr,待review @清铭 (内部异常都是seata异常,统一包装,后续大家注意遵守规范)
- 独立日志打印(现在框架和业务日志混在一起) todo
- 日志格式化输入:info、error (格式已经确定,各处的
-
单测覆盖度目标 70% @汪忠祥 牵头 @张嘉伟(2/3:前两周暂无进展)
- spring autoconfigure写完了(待merge @张嘉伟)
- 覆盖率计算不准确问题(https://app.codecov.io/gh/apache/incubator-seata/tree/2.x/integration-tx-api%2Fsrc%2Fmain%2Fjava%2Fio%2Fseata%2Fintegration%2Ftx%2Fapi%2Fjson)
- 目标需要完成
- 变更覆盖率需要保持在70%
- 梳理现状模块覆盖率文档,牵头推动 @张嘉伟 @汪忠祥 1.8
- 写单元测试的标准,junit?mock,版本等;@汪忠祥
- 存量治理的最终目的,增量的必须达到什么标准?
-
集测回归能力建设 @张嘉伟 @熊靖浏
- summer code e2e集成测试框架,docker compose,待确认(方案阶段)
- 集测方案/标准先确认下来; @张嘉伟 下次周会来个简版的演示
- PR地址: https://github.com/apache/incubator-seata/pull/6319
- 事后运行集成测试
- redis需要测试版本兼容性
- summer code e2e集成测试框架,docker compose,待确认(方案阶段)
-
兼容性测试(jdk、arch、spring core+boot、druid)@王良
- 测试MySQL Driver版本;workflow不同版本兼容性测试;与集测一起看(待集测框架完成)
-
性能benchmark @亦夏(整体框架已经搭建)(2/3:暂无进展)
- 只测框架消耗,sql逻辑
- 开源压测工具协助,建立基准性
- 包含图形化 (这个含义待确定)
- 确定增加新的模块实现;
- 性能基准问题;
- poc给大家演示下;@亦夏todo
-
mock测试 @谢明华 (4个pr已经提交,待review merge)
- 已初步review,下周单独为mock-server提一个pr,另有部分内容会提到seata-samples
- 添加测试用例;@谢明华(PR已合并,但单测经常失败,还需要再重新review是否可以投入使用)(@清铭 trace)
-
积压PR处置 @陈健斌 @刘月财
- go: 部分已经联系作者 (近期重启review,该合并的合并) @刘月财
- 2/3:只剩1个未合并,其他都已合并。
- 时间过长的pr,无法联系的pr(重要,并且需要的)由我们跟进
- 梳理下哪些联系不上,直接自己人搞 @刘月财 1.27前
- go的module name 改一下,apache xxx@刘月财 @刘月财 反馈: 1、seata-go 漏洞:看这里已经是0个了:https://github.com/apache/incubator-seata-go/security 2、seata 功能对齐:https://github.com/apache/incubator-seata/discussions/6322 3、seata-go 积压 PR处理:2023年的PR目前还有一个还没 review 完:https://github.com/apache/incubator-seata-go/pull/600 其他的PR代码都 review 完了,有2个CI 问题还在处理
- go: 部分已经联系作者 (近期重启review,该合并的合并) @刘月财
-
包迁移:
io.seata
->org.apache.seata
- 当前的pr尽快merge后,统一处理;@清铭 done
-
tcc 使用方式确认,是否需要兼容特殊使用方式 @亦夏 @李宗杰 (后续提相关pr跟进)
- 对于tcc注解使用方式的提醒,二阶段注解如果打在接口上,默认行为:已支持的rpc框架,提示waring;不支持的rpc框架,直接异常,上面的行为可以根据同一个开关控制,判断是打waring日志提示还是异常提示。 todo(PR待提交)
-
seata go方向
- 合规性治理:@亦夏 @清铭 @刘月财
- 仓库、一些依赖包的治理、CVE安全漏洞:done
- modelName待调整
- seata go saga框架的搭建和实现 @亦夏 @尹祥琨 @靖浏(总体进度:60~70%)
- 制定完成初步任务 [https://github.com/apache/incubator-seata/wiki/20231213]
- 已初步合并了一些PR,年后会有一个demo。
- 对齐seata java的feature和bugfix,目前对齐的是1.5.1版本,需要升级下(按照2.x的去改动,不保持双分支策略) @刘月财 先搞打过标的
- 罗列了一下清单:清单已明确,已提交了2个issue,其他待提交issue(其中1个问题已在跟进 @ruling)
- 合规性治理:@亦夏 @清铭 @刘月财
-
鉴权:@蒋俊敏
- TM的request和RM的request的鉴权(PR已提交,待review)
-
集成RocketMQ任务认领:(明华)
- SummerCode2021:
- SummerCode2021的课题,已由学生提交PR基本实现,PR未合并,需要整合到2.x分支中,计划在2.1.0版本发布。负责该课题的同学已联系不上。现在需要一位大佬认领一下这个任务,推进一下。
- 课题内容:https://github.com/apache/incubator-seata/issues/3752
- 课题学生提交的PR:https://github.com/apache/incubator-seata/pull/3974
- 接手任务情况:
- 方案:提供单独的API
- 新的PR已提交,待review:https://github.com/apache/incubator-seata/pull/6230
- 优先级:RocketMQ的SpringBoot Starter,暂时不用做了,先只做API,2.1.0版本一定要上API。
- SummerCode2021:
-
used by 保留方案讨论 @陈健斌
-
API兼容:
- 优先兼容大场景:已完成,@尹祥琨 done
- Server兼容:
- json序列化中存在老的io.seata的类名,已完成 @陈健斌 done
- raft模式中的数据,彼此兼容,只能升级server2.1及以上(注:Raft目前用户较少,暂时不用考虑数据兼容) @陈健斌
- RM/TM API:发群里,分任务。 (@清铭 trace)
- 拦截器不生效问题:保留老的拦截器的名字及包名。 @清铭
- TCC: @亦夏
- SAGA:@尹祥琨
- RPC:@清铭
- 通用:@吴江坷
-
resource id + application name唯一标识确认 @陈健斌 优先级较低,暂时没时间(有时间再发起讨论)
- resource id可能重复,导致下发问题,保证唯一,最终方案暂定,重新拉会议讨论
- 达梦数据库:schema只能填一个(已向达梦技术人员确认)
- 下次开会沟通,准备文档;要求可动态扩展;
- resource id可能重复,导致下发问题,保证唯一,最终方案暂定,重新拉会议讨论
-
seata go方向:
- 生态拓展:B站等等服务框架 @清铭 字节 @hong fan 下周再看做不做 1月底(跟字节的Cloud-We-GO聊了一下,文章两边挂,他们帮review。)
-
控制台token自动刷新 @刘秋枫 方案完成done (待投票,截止时间周一20231225) 俊敏 下周pr
- token自动续期方案选型讨论
- PR待提交(优先TM和RM的鉴权处理)
-
TYPE_SEATA_MERGE 的消息需要独立线程池处理 健斌 todo
- Message independent thread pool for TYPE_SEATA_MERGE · Issue #6197 · apache/incubator-seata (github.com)
- 方案已确定:分成两个线程池,一个NIO线程池,还有一个消息处理线程池。
- PR暂无进展
-
RM/proxy init启动先后顺序问题; @海涛 1月底开始投入
- TM/RM未init,rm注册,不再忽略,直接异常;TODO,确认
io.seata.core.rpc.netty.RmNettyRemotingClient#registerResource getClientChannelManager().getChannels().isEmpty()
情况下,是否会执行RM注册 @清铭 - 方案已确定,PR已在开发,进度:70% @海涛
- TM/RM未init,rm注册,不再忽略,直接异常;TODO,确认
-
jackson是强依赖 scope-provided 修改成compile依赖 @亦夏 @海涛
- 优先级较低:@海涛
-
2.1版本核心同步:(打 * 为重要,必须上)
- 多版本协议pr拆分,不在2.1计划;
- 控制台配置(和各个配置中心联动推拉),@王良 2.1版本不上 ,单独拉会议讨论;(任务发出去,原来PR能复用就复用,不复用就重启PR)
- saga增强;控制台saga设计器改版; 前端资源带动,任务跟上;
- 功能增强:done
- 放入console:done(通过maven插件触发nodejs脚本实现)
- 并行任务(PR未合并)
- Saga Trace Spring:PR已提交,由于包名调整,需再调整,后面再review。
-
- 鉴权优先,俊敏,2.1版本要上,有问题及时说
- token续期:2.1版本赶不上的话,就不上了
sql parser:remove- 错误码,先第一版merge进去;
-
- 老的io.seata的api 兼容;
-
- RocketMQ集成
-
多线程分支注册回滚顺序错漏
-
多线程并发使用seata的问题 · Issue #6311
- 导致了有数据依赖的分支,回滚顺序错误的问题。 @陈健斌(方案待讨论:性能与一致性问题,需再拉会议讨论)
- 多线程创建多个分支,且事务决议回滚时,还有分支在注册,导致回滚时读取的branch少一个分支,回滚顺序错乱,回滚事务。
- 解决方案可合并回滚,比如同一个资源,在一个下发中一次性回滚,这样就可以避免多次下发,且回滚顺序可能不对的问题,下发到本地时完全就可以select for update查询xid对应的undolog,按照本地的时间戳进行回滚。
- 缺点undolog的datetime精度要准确到纳秒级别
-
多线程并发使用seata的问题 · Issue #6311
-
Server高低版本兼容问题讨论:
- Raft模式:
- 端口同步问题(方案:元数据同步,来解决此问题)
- 协议解决方案:
- sofa bolt: @亦夏 问题同步过去一下
- grpc:
- python:
- Raft模式:
-
市面上与Seata相关的文章混乱问题: @清铭
Issue | Description | Github ID | Status |
---|---|---|---|
configuration log output · Issue #6191 · apache/incubator-seata (github.com) | 按照配置所属的模块做日志输出 | 王良 | pr review |
xa 不支持 org.mariadb.jdbc:mariadb-java-client:3.x.x 版本 · Issue #5454 · apache/incubator-seata (github.com) | 支持3.x的mariadb driver | wt-better、@清铭 | todo |
复合主建自增表结构,插入多行数据且未携带主键值时执行异常 · Issue #5043 · apache/incubator-seata (github.com) | 限制sql使用,比如要么都没有pk,要么都有pk,不允许批量插入的时候部分有,部分无的情况 | 建国 | 为BUG,需处理 |
seata1.5.2主键中带有逗号导致获取全局锁lock key值错误 · Issue #5136 · apache/incubator-seata (github.com) | pk存在逗号,导致竞争锁不准的bug 1. 文档标注 2. 客户端校验包含逗号直接报错 3. 协议版本协商功能 4. 含有逗号的base64处理+特殊标识 |
俊敏 | done:1、2,undo: 3、4 |
PR | Description | Reviewer | Status |
---|---|---|---|
feature: saga remove spring by wt-better · Pull Request #6017 · apache/incubator-seata (github.com) | 清铭,健斌,宗杰,王良 | 处理包名再review | |
feature: Saga annotation by leezongjie · Pull Request #5300 · apache/incubator-seata (github.com) | 健斌,亦夏,王良,清铭 | 依赖5399;拉会沟通 @亦夏(处理包名再review) |
- E2E集成测试框架效果演示(2024/2/3)
- 容器编排
- yamL文件定义测试流程,排除code的侵入,形成workflow
- workflow能否满足,dubbo这边的测试框架
@清铭、@陈健斌、@王良、@亦夏、@刘月财
@刘秋枫、@汪忠祥、@尹祥琨、@蒋俊敏、@熊靖浏、@汤如林、@郝洪范、@胡树利