Dimitrios Apostolou <ji...@gmx.net> writes: > Unfortunately after I did pg_restore to a new server, I notice that the > dumps from the new server are not being de-duplicated, all blocks are > considered new.
> This means that the data has been significantly altered. The new dumps > contain the same rows but probably in very different order. Could the > row-order have changed when doing COPY FROM with pg_restore? I'd expect pg_dump/pg_restore to preserve the physical row ordering, simply because it doesn't do anything that would change that. However, restoring into an empty table would result in a table with minimal free space, whereas the original table probably had a meaningful amount of free space thanks to updates and deletes. Thus for example TIDs would not be the same. If your "rolling checksum" methodology is at all sensitive to page boundaries, the table would look quite different to it. regards, tom lane