TimescaleDB数据无法自动或手动删除问题排查求助
TimescaleDB数据无法自动或手动删除问题排查求助
我最近碰到个TimescaleDB的棘手问题,不管是靠配置的自动保留策略删数据,还是手动执行删除操作,traffic表里的过期数据就是纹丝不动,想请各位帮忙排查下问题出在哪。
先给大家看下我建表和设置保留策略的DDL:
CREATE TABLE traffic ( src_ip_addr INET, ts TIMESTAMPTZ NOT NULL DEFAULT NOW(), ); CREATE INDEX ON traffic (ts); SELECT public.create_hypertable('traffic', 'ts'); SELECT public.add_retention_policy('traffic', drop_after => INTERVAL '2 minute', schedule_interval => INTERVAL '1 minute');
目前这个表里的数据时间戳范围是2024-07-31 13:41:20.611561 +00:00到2024-07-31 13:41:33.140070 +00:00。
按照我设置的保留策略,数据超过2分钟就该被删掉,而且最近一次保留任务是在2024-07-31 13:53:49.294042 +00:00运行的,这个时间远晚于数据的过期时间,但现在表里还是留着这些早就该被清理的数据。
我查了任务的运行状态,相关信息如下(部分列内容未完整展示):
| hypertable_name | job_id | config | schedule_interval |
|---|---|---|---|
| traffic | [对应任务ID] | 包含drop_after => INTERVAL '2 minute'的配置项 | INTERVAL '1 minute' |
我也试过手动执行删除语句,但数据依然没被删掉,实在摸不着头脑了,有没有大佬能帮我分析下可能的原因,或者该从哪些方面进一步排查?
备注:内容来源于stack exchange,提问作者user2233706
相关产品推荐
相关产品推荐

