Apply filters to dump files all the time in 002_pg_upgrade.pl
authorMichael Paquier <[email protected]>
Wed, 6 Dec 2023 00:55:00 +0000 (09:55 +0900)
committerMichael Paquier <[email protected]>
Wed, 6 Dec 2023 00:55:00 +0000 (09:55 +0900)
commita499c08dca5e0162e210cc8a411698e2808a04da
tree97f2f796e6df5cea57232d1303d045bc85390a97
parent8da1fb13bdb14b7a3f3ecad2d4b1530fd00227da
Apply filters to dump files all the time in 002_pg_upgrade.pl

This commit removes the restriction that would not apply filters to the
dumps used for comparison in the TAP test of pg_upgrade when using the
same base version for the old and new nodes.

The previous logic would fail on Windows if loading a dump while using
the same set of binaries for the old and new nodes, as the library
dependencies updated in the old dump would append CRLFs to the dump
file as it is treated as a text file.  The dump filtering logic replaces
all CRLFs (\r\n) by LFs (\n), which is able to prevent this issue.

When the old and new versions of the binaries are the same,
AdjustUpgrade removes all blank lines, removes version-based comments
generated by pg_dump and replaces CRLFs by LFs.

Reported-by: Alexander Lakhin
Discussion: https://postgr.es/m/60d434b9-53d9-9ea1-819b-efebdcf44e41@gmail.com
Backpatch-through: 15
src/bin/pg_upgrade/t/002_pg_upgrade.pl