取消了DDL。 但之后就无法进行DDL操作了

,

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

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

辛苦执行 create database asktug_test; 看下结果,并检查 admin show ddl; admin show ddl jobs; 信息是否符合预期

PS:admin show ddl; 默认会将 ower ddl 展示出来,当有 query 出现,会将 QUERY 字段填充。

第一个窗口下执行: create database asktug_test;
第二个窗口下给出的提示如图所示。

我该如何操作,可以恢复DDL操作。目前问题为:DDL队列卡死,不能进行DDL操作

你好,
请将 tidb log cp 出来一份,并上传一下
目前尝试重启 tidb-server 看是否可以恢复。

tidb.logbak (3.1 MB)


tidb.logbak为 tidb log,请查阅
8月8号当我升级完,且tiflash执行完部署。执行了如下操作:
ALTER TABLE test.example SET TIFLASH REPLICA 1;
上述操作,我发现很耗时,则执行了如下操作。
ADMIN CANCEL DDL JOBS 89;ADMIN CANCEL DDL JOBS 90;
再次DDL建表等操作,均无法取消DDL中队列

关闭:pumps
无:[2020/08/10 00:07:35.959 +08:00] [WARN] [client.go:573] ["[pumps client] write detect binlog to pump failed"] [NodeID=newdba2-node05:8250] [error=“rpc error: code = Unavailable desc = connection closed”]
警告。
再次执行:ddl ,如下为tidb.log

[2020/08/10 19:45:35.006 +08:00] [ERROR] [ddl_worker.go:157] ["[ddl] handle DDL job failed"] [worker=“worker 1, tp general”] [error="[global:3]critical error write binlog failed, the last error no avaliable pump to write binlog"]
[2020/08/10 19:45:35.007 +08:00] [INFO] [client.go:328] ["[pumps client] write binlog to avaliable pumps all failed, will try unavailable pumps"]
[2020/08/10 19:45:35.009 +08:00] [INFO] [2pc.go:1251] [“2PC clean up done”] [txnStartTS=418659679594872836]
[2020/08/10 19:45:36.002 +08:00] [INFO] [ddl_worker.go:584] ["[ddl] run DDL job"] [worker=“worker 1, tp general”] [job=“ID:112, Type:create schema, State:none, SchemaState:none, SchemaID:111, TableID:0, RowCount:0, ArgLen:0, start time: 2020-08-10 19:45:13.428 +0800 CST, Err:, ErrCount:0, SnapshotVersion:0”]
[2020/08/10 19:45:36.004 +08:00] [INFO] [client.go:328] ["[pumps client] write binlog to avaliable pumps all failed, will try unavailable pumps"]
[2020/08/10 19:45:36.004 +08:00] [ERROR] [binloginfo.go:253] [“write binlog failed”] [binlog_type=Prewrite] [binlog_start_ts=418659679857016836] [binlog_commit_ts=0] [error=“write binlog failed, the last error no avaliable pump to write binlog”]
[2020/08/10 19:45:36.006 +08:00] [ERROR] [ddl_worker.go:157] ["[ddl] handle DDL job failed"] [worker=“worker 1, tp general”] [error="[global:3]critical error write binlog failed, the last error no avaliable pump to write binlog"]
[2020/08/10 19:45:36.006 +08:00] [INFO] [client.go:328] ["[pumps client] write binlog to avaliable pumps all failed, will try unavailable pumps"]
[2020/08/10 19:45:36.009 +08:00] [INFO] [2pc.go:1251] [“2PC clean up done”] [txnStartTS=418659679857016836]

我重新部署了pump,再次进行启动。目前已经恢复。可以正常转成TIFLASH 表。
过程:版本升级,增加TIFLASH 。使用TIFLASH ,无法写入pump。重启无法解决。
进行重新部署pump,再次启动。可以正常使用DDL/DML操作。DDL目前状态:如图

请问,您在升级前就有binlog吗? 升级的时候没有升级 pump 和 draner 组件?

嗯。升级之前就有binlog的。tidb版本升级 没有单独进行组件升级。只是进行了上面截图中的第二步 升级过程。

是 tiup 部署吗,升级操作是一起进行的,不需要对 tidb binlog 做单独的升级操作,第二步指的是?

这边看到 pump 应该是不可用了,导致 sql 写入 tidb 失败。

第二步是:https://asktug.com/uploads/default/original/3X/6/5/65aea5f7dc09f260d2b514419bbb6904ad7583e7.jpeg

我是ansiable 做的升级操作。我又重新部署4.x版本的pump 和draner 就可以了。

问题已经解决掉了。

sorry,
是否有 drainer 的版本信息,drainer log 和 pump log 搜索 welcome 会有。看下是否是因为 tidb 已经升级成功,binlog 没有升级成功导致版本不一致,导致的,这边排除下,保证下此升级不会出现类似问题。

或者把 drainer 和 pump 日志完成上传下,定位下问题,但是从 tidb log 中看到的就是 pump 全部不可用导致的,这边希望通过 log 实锤下,可以添加到升级的注意事项中

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。