【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】7.5.6
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
tidb从5.4.0升级到7.5.6后,SQL执行计划发生改变,尝试使用hint,SQL仍然选择全表扫描,无法走到正确执行计划
explain UPDATE /*+ USE_INDEX(t_skin, uidx_FAccountId_FSkinId_FIsDeleted) */ t_skin
SET FTotalFragmentCount
=
CASE
WHEN (FAccountId = 123 AND FSkinId = 10053) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10054) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10010) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10012) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10017) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10020) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10024) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10025) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10028) THEN 20
WHEN (FAccountId = 123 AND FSkinId = 10007) THEN 202
ELSE FTotalFragmentCount
END,
`FCurrentFragmentCount` =
CASE
WHEN (FAccountId = 123 AND FSkinId = 10053) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10054) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10010) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10012) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10017) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10020) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10024) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10025) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10028) THEN 0
WHEN (FAccountId = 123 AND FSkinId = 10007) THEN 182
ELSE FCurrentFragmentCount
END
WHERE
(FAccountId,FSkinId) IN
(
(123,10053)
,
(123,10054)
,
(123,10010)
,
(123,10012)
,
(123,10017)
,
(123,10020)
,
(123,10024)
,
(123,10025)
,
(123,10028)
,
(123,10007)
)
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】