各位大佬好~
tidb版本:v5.x
问题描述:
当我使用go-sql-driver访问tidb时,会发生ctx结束后,tidb对应的会话无法取消的情况,但是MySQL没有此问题。
代码如下:
# 10s超时
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
# 执行查询
rows, err := db.QueryContext(ctx,"select sleep(600)")
10s 后触发超时,代码返回符合预期,如下:
context deadline exceeded
但是此时登录tidb发现该查询,tidb未结束掉
辛苦各位帮忙看看,如何解决?不希望每次去kill。或者哪里可以传递参数?