#20866·vitess

Bug 报告: VTAdmin 泄露相等的动态集群候选人

作者: timvaillancourt创建于 2026年8月19日更新于 2026年9月16日
标签Type: BugComponent: VTOrc

□ 问题概览

当动态集群被启用时,VTAdmin会构建一个新的QQ集群. 从每个请求的集群饼干或元数据进行分组,然后将其与缓存集群进行比较

当定义相等时,[`With Cluster (.)'保留了现有的集群](https://GitHub.com/vitessio/vitess/blob/75639108999de3952b74ecc2bbdcc938390d437c/go/vt/vtadmin/api.go#L322-L355),但新建的候选人从未被存储或关闭. 每个被否决的集群都留下一个计程箱工人运行,并保留其客户代理和RPC池. 打开代理连接是一个可能的二次影响,但没有被测量

这影响到使用 " 可动能组 " 的部署。 在一次有重点的HTTP复制中,5x相同的申请创造了5x schema-cache工人;关闭API则停止了1x工人,留下了4x被拒绝的候选人参选.

□ 复制步骤

  1. 启动VTAdmin " 可动能组群 "
  2. 发送包含有效动态集群饼干的 HTTP 请求
  3. 用同一块饼干多次重复请求
  4. 观察到每个请求都会产生另一个计程计数器,尽管只有1个集群仍然被缓存
  5. 关闭API,观察到只停止储存的集群工人

□ 二进制版本

嘘 主站点为7563910899de3952b74ecc2bdc93838690d437c


□ 操作系统和环境细节

嘘
macOS 26.5.2
达尔文 25.5.
军火64

内容来源: vitessio/vitess