Re: Test 002_pg_upgrade fails with olddump on Windows

Alexander Law <exclusion@gmail.com>

From: Alexander Lakhin <exclusion@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2023-12-05T09:00:00Z
Lists: pgsql-hackers
Hi Michael,

05.12.2023 10:56, Michael Paquier wrote:

> Or you have used the test suite with an old installation that has the
> same major version as the new installation, meaning that the filtering
> was not happening, still you have detected some diffs?  It sounds to
> me that we should just apply the filters to the dumps all the time if
> you have used matching versions.  The filtering would remove only the
> comments, some extra newlines and replace the CRLFs in this case.

Yes, my case is with the same version, literally:
build>echo create database regression>c:\temp\dump.sql
build>set olddump=c:\temp\dump.sql& set oldinstall=%CD%/tmp_install/usr/local/pgsql& meson test pg_upgrade/002_pg_upgrade

So removing the condition "if ($oldnode->pg_version != $newnode->pg_version)"
works here as well, but maybe switching the file mode (to preserve EOLs
produced by pg_dump) in the block "After dumping, update references ..."
is more efficient than filtering dumps (on all OSes?).

Best regards,
Alexander



Commits

  1. Fix path of regress shared library in pg_upgrade test

  2. Apply filters to dump files all the time in 002_pg_upgrade.pl