Hi,
We're on Postgresql version 14.1. After running pg_amcheck on one of
our databases, we see lots of the same errors for a lot of tables.
Here's an example run for a single table:
/usr/lib/postgresql/14/bin/pg_amcheck -h /var/run/pgsql15/ -d poker -t
public.user_tournament --heapallindexed
heap table “poker.public.user_tournament”, block 30356, offset 125:
xmax 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 30356, offset 145:
xmin 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 30601, offset 106:
xmax 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 30601, offset 111:
xmin 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 30645, offset 2:
xmax 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 30645, offset 3:
xmin 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 31416, offset 8:
xmax 634989520 precedes relation freeze threshold 12:634871433
heap table “poker.public.user_tournament”, block 31416, offset 9:
xmin 634989520 precedes relation freeze threshold 12:634871433
VACUUM FREEZE on this table completes successfully, but pg_amcheck
errors still remain. What are the implications behind this error? Does
this mean some kind of a silent data corruption? Or are they harmless?
Are there any ways to fix them/prevent them appearing in the future?
Best regards,
Sergey Aleynikov