3.3.6.9版本 interval 时间窗口查询数据有误

【TDengine 使用环境】
测试

【TDengine 版本】
3.3.6.9
【操作系统以及版本】
ubuntu 24
【部署方式】容器/非容器部署
非容器部署
【集群节点数】
单机
【集群副本数】
单机
【描述业务影响】

【问题复现路径/shan】做过哪些操作出现的问题

【遇到的问题:问题现象及影响】
按时间窗口查询,出现阻塞和数据出错情况。场景是景是查询电表一年内12个月的耗能情况(查询当月每天也是如此)

  1. 通过 INTERVAL(1n ,AUTO ),返回了13条数据,时间戳为每个月2号0点,且都是null。
  2. 返回值加上id ,查询进程阻塞。
  3. 返回值加上id,通过 INTERVAL(1n), 可以正常返回,但是返回的数据也为13条,但返回时间戳为每月1号,8点。
    【资源配置】

【报错完整截图】

好的 我们本地先验证一下。

超级表结构:CREATE STABLE IF NOT EXISTS s_pulse (ts TIMESTAMP, val DOUBLE , prop INT) TAGS (id INT ,factory_id INT ,equip_id INT);
sql:

  1. select _wstart as ts , (last(val) - first(val)) as val from jlbk.s_pulse
    where id in ( 1434 ) and ts >= “2025-01-01 00:00:00.0” AND ts < “2026-01-01 00:00:00.0” partition by id INTERVAL(1n ,AUTO ) fill(null);
  2. select _wstart as ts , (last(val) - first(val)) as val, id, first(factory_id) as factory_id, first(equip_id) as equip_id, first(prop) as prop from jlbk.s_pulse
    where id in ( 1434 ) and ts >= “2025-01-01 00:00:00.0” AND ts < “2026-01-01 00:00:00.0” partition by id INTERVAL(1n ,AUTO ) fill(null);
  3. select _wstart as ts , (last(val) - first(val)) as val, id, first(factory_id) as factory_id, first(equip_id) as equip_id, first(prop) as prop from jlbk.s_pulse
    where id in ( 1434 ) and ts >= “2025-01-01 00:00:00.0” AND ts < “2026-01-01 00:00:00.0” partition by id INTERVAL(1n) fill(null);


本地验证无误,需要进一步排查

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