TIDB 3.0.0升级至3.0.7报错

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

  • 【TiDB 版本】:当前3.0.0,目标版本3.0.7
  • 【问题描述】: 执行滚动升级,check_config_tidb阶段报错
ansible-playbook rolling_update.yml

截图:

报错信息:

[tidb1]: Ansible FAILED! => playbook: rolling_update.yml; TASK: check_config_tidb : Create configuration file; message: {“changed”: false, “msg”: “AttributeError: ‘unicode’ object has no attribute ‘items’”}

和其他同样升级过的集群对比过配置文件,配置文件内容应该没问题

  • name: Create configuration file template: src={{ playbook_dir }}/roles/tidb/templates/tidb.toml.j2 dest={{ tidb_check_dir }}/tidb.toml mode=0644 backup=yes

检查下 tidb.toml.j2 文件: https://github.com/pingcap/tidb-ansible/blob/master/roles/tidb/templates/tidb.toml.j2

tidb.toml.j2 (1.8 KB)

对比下报错的这个文件和正常的文件是否有差异,可以参考 github 上面的文件。

刚才上传的是3.0.7版本的tidb.toml.j2,是和master分支的对比?

https://github.com/pingcap/tidb-ansible/tree/v3.0.7/roles/tidb/templates 跟 3.0.7 的对比下。

文件是一样的

再麻烦参考官网要求的 python 版本检查下是否版本不一致。

ansible 2.7.11

Name: Jinja2 Version: 2.9.6

Name: jmespath Version: 0.9.3

看下 roles/tidb/vars/default.yml 以及 conf/tidb.yml 这两个文件跟 github 上文件比对下,同时 ansible-playbook -vvv 看下输出。

default.yml文件内容一致

tidb.yml修改参数:oom-action,mem-quota-query,增加参数 feedback-probability,如图

ansible-playbook rolling_update.yml -vvv 麻烦这样看下

把新加的 feedback-probability 参数去掉再试下。

嗯,我们打算明天再试下

好的,有问题在继续跟帖。

问题已解决

:+1:好的,如果还有其他问题请新开贴继续沟通,感谢配合~