-
Notifications
You must be signed in to change notification settings - Fork 1
Description
--- As of 2026-02-10T18:34:37.000Z ---
Tom Lane reported intermittent failures in postgres_fdw regression tests affecting multiple buildfarm animals using meson. The issue involves non-deterministic row ordering in an UPDATE...RETURNING query, where row 2010 sometimes appears at the beginning instead of the end of results. Lane traced this to opportunistic page pruning behaving differently when concurrent transactions exist, despite autovacuum being disabled on the test table. The test assumes sequential insertion order but sometimes rows are placed in free space earlier in the table. Lane proposes fixing this by wrapping the UPDATE in a CTE with ORDER BY c1 to ensure deterministic output. Nathan Bossart agrees with the proposed fix, noting he previously investigated this issue. Alexander Lakhin provided additional context referencing his earlier reproduction and reporting of similar failures, confirming autovacuum involvement despite being disabled.
Tom Lane 报告了影响多个使用 meson 的构建农场动物的 postgres_fdw 回归测试间歇性失败。问题涉及 UPDATE...RETURNING 查询中的非确定性行排序,其中行 2010 有时出现在结果开头而不是结尾。Lane 追踪到这是由于在存在并发事务时机会性页面修剪行为不同造成的,尽管在测试表上已禁用 autovacuum。测试假设顺序插入顺序,但有时行会被放置在表中较早的空闲空间中。Lane 建议通过将 UPDATE 包装在带有 ORDER BY c1 的 CTE 中来修复此问题,以确保确定性输出。Nathan Bossart 同意建议的修复,指出他之前调查过这个问题。Alexander Lakhin 提供了额外的背景,引用了他之前对类似失败的重现和报告,确认了尽管被禁用但 autovacuum 仍有参与。
participants - 参与者: