SHOW PUMP STATUS reports "context deadline exceeded" if binlog is disabled and PDs are transferred to new hosts
- Dominant language
- Go
- Stars
- 40.5k
- Forks
- 6.2k
- PR merge metrics
- PR metrics pending
Description
## Bug Report
Please answer these questions before submitting your issue. Thanks!
### 1. Minimal reproduce step (Required)
1. Start TiDB cluster with [`binlog.enabled = false`](https://docs.pingcap.com/zh/tidb/v8.1/tidb-configuration-file#binlog).
2. Run `SHOW PUMP STATUS`, ensure it returns an empty set immediately.
3. Add some new PD servers, transfer the PD leader, delete the old PD servers.
4. Run `SHOW PUMP STATUS` again.
### 2. What did you expect to see? (Required)
It returns an empty set immediately.
### 3. What did you see instead (Required)
It failed with "context deadline exceeded".
```
[2025/02/26 15:19:40.399 +08:00] [INFO] [conn.go:1181] ["command dispatched failed"] [conn=7149332467055329685] [connInfo="id:7149332467055329685, addr:[172.16.201.22:24302](http://172.16.201.22:24302/) status:10, collation:utf8_general_ci, user:root"] [command=Query] [status="inTxn:0, autocommit:1"] [sql="show pump status"] [txn_mode=PESSIMISTIC] [timestamp=0] [err="context deadline exceeded\[ngithub.com/pingcap/errors.AddStack\n\t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20220729040631-518f63d66278/errors.go:174\ngithub.com/pingcap/errors.Trace\n\t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20220729040631-518f63d66278/juju_adaptor.go:15\ngithub.com/pingcap/tidb/util/etcd.(*Client).List\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/util/etcd/etcd.go:209\ngithub.com/pingcap/tidb/tidb-binlog/node.(*EtcdRegistry).Nodes\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-binlog/node/registry.go:76\ngithub.com/pingcap/tidb/executor.(*ShowExec).fetchShowPumpOrDrainerStatus\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:1782\ngithub.com/pingcap/tidb/executor.(*ShowExec).fetchAll\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:198\ngithub.com/pingcap/tidb/executor.(*ShowExec).Next\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:119\ngithub.com/pingcap/tidb/executor.Next\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/executor.go:328\ngithub.com/pingcap/tidb/executor.(*ExecStmt).next\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/adapter.go:1154\ngithub.com/pingcap/tidb/executor.(*recordSet).Next\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/adapter.go:155\ngithub.com/pingcap/tidb/server.(*tidbResultSet).Next\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/driver_tidb.go:428\ngithub.com/pingcap/tidb/server.(*clientConn).writeChunks\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2342\ngithub.com/pingcap/tidb/server.(*clientConn).writeResultset\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2285\ngithub.com/pingcap/tidb/server.(*clientConn).handleStmt\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2152\ngithub.com/pingcap/tidb/server.(*clientConn).handleQuery\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1972\ngithub.com/pingcap/tidb/server.(*clientConn).dispatch\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1403\ngithub.com/pingcap/tidb/server.(*clientConn).Run\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1152\ngithub.com/pingcap/tidb/server.(*Server).onConn\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/server.go:648\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1594](http://ngithub.com/pingcap/errors.AddStack/n/t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20220729040631-518f63d66278/errors.go:174/ngithub.com/pingcap/errors.Trace/n/t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20220729040631-518f63d66278/juju_adaptor.go:15/ngithub.com/pingcap/tidb/util/etcd.(*Client).List/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/util/etcd/etcd.go:209/ngithub.com/pingcap/tidb/tidb-binlog/node.(*EtcdRegistry).Nodes/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/tidb-binlog/node/registry.go:76/ngithub.com/pingcap/tidb/executor.(*ShowExec).fetchShowPumpOrDrainerStatus/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:1782/ngithub.com/pingcap/tidb/executor.(*ShowExec).fetchAll/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:198/ngithub.com/pingcap/tidb/executor.(*ShowExec).Next/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/show.go:119/ngithub.com/pingcap/tidb/executor.Next/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/executor.go:328/ngithub.com/pingcap/tidb/executor.(*ExecStmt).next/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/adapter.go:1154/ngithub.com/pingcap/tidb/executor.(*recordSet).Next/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/executor/adapter.go:155/ngithub.com/pingcap/tidb/server.(*tidbResultSet).Next/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/driver_tidb.go:428/ngithub.com/pingcap/tidb/server.(*clientConn).writeChunks/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2342/ngithub.com/pingcap/tidb/server.(*clientConn).writeResultset/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2285/ngithub.com/pingcap/tidb/server.(*clientConn).handleStmt/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:2152/ngithub.com/pingcap/tidb/server.(*clientConn).handleQuery/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1972/ngithub.com/pingcap/tidb/server.(*clientConn).dispatch/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1403/ngithub.com/pingcap/tidb/server.(*clientConn).Run/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/conn.go:1152/ngithub.com/pingcap/tidb/server.(*Server).onConn/n/t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/tidb/server/server.go:648/nruntime.goexit/n/t/usr/local/go/src/runtime/asm_amd64.s:1594)"]
```
### 4. What is your TiDB version? (Required)
deeb4338884767b4d9276add5211169ec0a0ad62
Contributor guide
Assessment
This issue has not been assessed yet.