在 PostgreSQL 9.5 中,为了监控流复制延迟,我使用了以下组合:
前两个函数用于确定主备之间是否存在任何滞后。如果有一些滞后,那么我确定它:
select now() - pg_last_xact_replay_timestamp();
Run Code Online (Sandbox Code Playgroud)
大多数情况下,它返回合理的数量——几秒到几分钟的滞后。但是,该语句偶尔会返回不太可能的大值。几天的滞后。
我们的系统中没有任何交易运行那么长时间,甚至没有关闭。
谁能建议这里发生了什么?