Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit bfc677c

Browse files
committed
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
1 parent 824dbea commit bfc677c

File tree

1 file changed

+3
-9
lines changed

1 file changed

+3
-9
lines changed

src/bin/pg_upgrade/t/002_pg_upgrade.pl

+3-9
Original file line numberDiff line numberDiff line change
@@ -437,15 +437,9 @@ sub filter_dump
437437
if ($oldnode->pg_version < 12);
438438
$newnode->command_ok(\@dump_command, 'dump after running pg_upgrade');
439439

440-
# No need to apply filters on the dumps if working on the same version
441-
# for the old and new nodes.
442-
my $dump1_filtered = $dump1_file;
443-
my $dump2_filtered = $dump2_file;
444-
if ($oldnode->pg_version != $newnode->pg_version)
445-
{
446-
$dump1_filtered = filter_dump(1, $oldnode->pg_version, $dump1_file);
447-
$dump2_filtered = filter_dump(0, $oldnode->pg_version, $dump2_file);
448-
}
440+
# Filter the contents of the dumps.
441+
my $dump1_filtered = filter_dump(1, $oldnode->pg_version, $dump1_file);
442+
my $dump2_filtered = filter_dump(0, $oldnode->pg_version, $dump2_file);
449443

450444
# Compare the two dumps, there should be no differences.
451445
my $compare_res = compare($dump1_filtered, $dump2_filtered);

0 commit comments

Comments
 (0)