v1.0.12 — 幽灵在线:确认根因(acceptor 挂起) + 锁定回归测试
幽灵在线:确认根因、锁定修复
v1.0.11 的线上诊断日志已钉死根因并验证修复有效。客户端跑完 fast.com 断开时,
4 条会话池一起收尾,日志显示:
reader 结束 ×4 ← 帧循环都正常结束
acceptor 自然结束 ×3 ← 3 条秒退
acceptor 宽限超时被中止 ×1 ← 第 4 条(承载下载中继那条)卡住,靠 2s 宽限中止
serve 返回 → 在线上报 0 ← 面板归零
根因:serve() = join!(reader, acceptor) 要两个都结束才返回。reader(帧循环)
在 carrier 关闭时结束,但 acceptor 靠 mux actor 结束才退,而 actor 在「某条流接收积压
无消费者、永不排空」时永久阻塞 → serve() 永久挂住 → 在线注销永不运行 → 幽灵。前三版
(v1.0.8/9/10)都在修 reader,全打偏;v1.0.11 改 serve() 才改对。
本版(v1.0.12):功能与 v1.0.11 一致,另外
- 补可复现的回归测试:还原成无限
join!时超时转红、有界宽限时通过(变异验证过),
彻底锁死这个修复; - 清理 v1.0.11 的逐会话诊断日志,只保留一条低频信号(真的中止卡住的 accept 循环时)。
升级
bash install.sh已在 v1.0.11 的韩国节点验证:断开后约 5 秒内归零(不再是 3 分钟)。
产物
| 文件 | 架构 |
|---|---|
dbk-node-x86_64-unknown-linux-gnu.tar.gz |
x86_64 / amd64 |
dbk-node-aarch64-unknown-linux-gnu.tar.gz |
aarch64 / arm64 |