使用ansible升级3.0.6版本到3.0.7时,版本检查失败

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:3.0.6
  • 【问题描述】:使用ansible升级3.0.6版本到3.0.7时,版本检查失败

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

原因是3.0.6打印的版本信息,和其他版本不一致,少个字母v:

./bin/tidb-server -V Release Version: 3.0.6 Git Commit Hash: 76f0386c5a17511da1799a9f1b3ce8e994b69007 Git Branch: HEAD UTC Build Time: 2019-11-28 10:06:40 GoVersion: go version go1.13 linux/amd64 Race Enabled: false TiKV Min Version: v3.0.0-60965b006877ca7234adaced7890d7b029ed1306 Check Table Before Drop: false

滚动升级的ansible脚本中,检查版本能否滚动升级的时候,带了字母v:

tasks: - shell: “{{ deploy_dir }}/bin/tidb-server -V” register: current_version

- name: Check whether can perform rolling update
  fail:
    msg: "Rolling update from {{ current_version.stdout_lines[0].replace(' ','').split(':')[1] }} to {{ tidb_version }} is forbidden"
  when:
    - current_version.stdout_lines[0].replace(' ','').split(':')[1] < "v2.0.1"
    - tidb_version >= "v2.1.0" or tidb_version == "latest"

我采用的临时的处理方式是修改检查条件,请官方正式修复:

when:
    - current_version.stdout_lines[0].replace(' ','').split(':')[1] < "2.0.1"
    - tidb_version >= "v2.1.0" or tidb_version == "latest"

好的,收到。

经过验证确实存在这样的问题,为我们的疏忽致歉,感谢反馈。

参照这个 pr 修改一下,然后再重新执行

快速响应,点赞!!

你好,3.0.6 发布时 TiDB 的构建存在一些问题。我们在发布 3.0.7 时候发现了并且当时对 3.0.6 重新做了构建和发布,现在重新下载 3.0.6 版本就没有问题的。