Skip to content

v1.2.0:Outbox 批量确认与自适应 write-behind

Latest

Choose a tag to compare

@vincent-lxc vincent-lxc released this 11 Sep 15:01
· 34 commits to main since this release

发布内容

  • Outbox 可选批量确认:新增 event.OutboxBatchMarker,同 key 仍逐条发布,成功前缀一次事务确认;未实现该接口的 store 继续逐条 MarkPublished。示例 06/07 已接入。
  • 审计修复:批量确认在更新前核对全部 ID,零主键或缺失记录返回错误,防止部分确认被当作整批成功;补充真实 MySQL 整批回滚、幂等确认及发布器重启重试测试。
  • Write-behind 自适应 Group Commit:数量门槛或最长收集时间触发提交,成功积压连续排空,失败有界退避。新增配置全零保持旧行为,继续保护已有可靠 pending。
  • 同步更新权威 AI skill、兼容矩阵、统一同步指南和审计验证记录。

兼容与验收

无需清空已有 pending 或 Broker 数据;未改 MQ 生命周期、服务发现、管理后台子模块及内嵌前端产物。Outbox 确认不等于消费者 ACK,也不授权 Broker 消息删除。确认失败可能重复投递,消费者须保持 EventID 幂等。

已通过 RED→GREEN、定向 race 三轮、真实 MySQL 事务测试、示例 06 Redis/mTLS/SQLite 三进程 race、Core 主体与示例 07 包测试、正式 API/配置/安全发布门禁,以及合并后定向 race。

低流量缩短收集时间可能增加提交次数;本版不宣称 redo/fsync 普遍下降。Bitzoom 部署、R60/容量验收及示例 07 Docker 全拓扑为 NOT RUN。

已知依赖告警

推送时 GitHub 提示既有高危告警 GHSA-2v4p-qf9q-27wj:gRPC-Go xDS Server 对缺失 authority/Host 的请求可能崩溃,修复版为 1.83.2。本版仍使用 1.83.1;Core 内置服务端使用普通 grpc.NewServer,未使用 xds.NewGRPCServer,未发现公告描述的入口。消费方自行启用 xDS 时必须另行评估;本次 Outbox 审计未扩展为依赖升级,也未关闭该告警。

发布提交:da5d1ede50afb472d74fb7074c1db926215a952c。

审计修复提交:6a84d52;原始提交 87cfa74 仅摘取本次内容为 de243a5,没有合并后台分支的其他改动。

详细记录:Outbox 审计与验证、Write-behind 同步指南。

go get github.com/digitalwayhk/core@v1.2.0