Fix 002_pg_upgrade.pl.
authorJeff Davis <[email protected]>
Mon, 11 Mar 2024 20:57:37 +0000 (13:57 -0700)
committerJeff Davis <[email protected]>
Mon, 11 Mar 2024 21:09:07 +0000 (14:09 -0700)
commitbbbf71d9a68103e00f73dae02fa6de6d60c3b86a
tree23ad75dca9563aeab79ccba03d8f3889e7ea0c53
parent319e9e53f3797fe4a4753b54a98ab717bb2f2ca0
Fix 002_pg_upgrade.pl.

Commit f696c0cd5f caused a test failure in 002_pg_upgrade.pl, because
an earlier s/// operator caused qr// to no longer match the empty
string. Use qr/^$/ instead, which is a better test anyway, because we
expect the stderr to be empty.

Initially this appeared to be a perl bug, but per discussion, it seems
that it was a misunderstanding of how perl works: an empty pattern
uses the last successful pattern. Given how surprising that behavior
is to perl non-experts, we will need to look for similar problems
elsewhere and eliminate the use of empty patterns throughout the
code. For now, address this one instance to fix the buildfarm.

Discussion: https://postgr.es/m/0ef325fa06e7a1605c4e119c4ecb637c67e5fb4e[email protected]
Reviewed-by: Tom Lane
src/bin/pg_upgrade/t/002_pg_upgrade.pl