【 TiDB 使用环境】生产环境
【 TiDB 版本】 4.0.8
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】 linux系统时区 东八区, 设置analyze时间范围不生效, 白天期间analyze 影响服务性能
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
tiup cluster exec [cluster-name] --command='timedatectl'
看看结果如何。
是不是表上修改的行数没有到达更新的阈值
SELECT @@global.time_zone, @@session.time_zone, @@global.system_time_zone;
执行一下看看
所有的机器都是
stdout:
Local time: Tue 2023-09-12 10:01:31 CST
Universal time: Tue 2023-09-12 02:01:31 UTC
RTC time: Tue 2023-09-12 02:01:31
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
mysql> SELECT @@global.time_zone, @@session.time_zone, @@global.system_time_zone;
±-------------------±--------------------±--------------------------+
| @@global.time_zone | @@session.time_zone | @@global.system_time_zone |
±-------------------±--------------------±--------------------------+
| SYSTEM | SYSTEM | Asia/Shanghai |
±-------------------±--------------------±--------------------------+
1 row in set (0.01 sec)
不是, 上面图上最下面的analyze时间不在限制时间范围内
这时区也对着,你这几个参数是昨天设置的吗?
设置很久了, 昨天把0800 改0000 尝试了
你昨天改成22:00 +0000到06:00 +0000了?那不就是06:00 +0800 到14:00 +0800了吗?
正常是这样的, 我需要再观察一下执行的效果
判断时间区间的函数是没有问题的。
https://github.com/pingcap/tidb/blob/v4.0.8/util/timeutil/time.go#L196
是支持 22:00 到 06:00 这种格式的。
所以怀疑的方向就变成了bug。
然后就找到了这个
https://github.com/pingcap/tidb/issues/28698
而且这个bug直到5.2.2才修复,4.x版本的修复被拒了。
不太确定了, 我有的环境测试就是生效的, 版本还一致 我也有些疑惑了