aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2024-03-09 16:20:44 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2024-03-09 16:20:44 -0500
commit519443162dce52a3b10372338401d63084f720b8 (patch)
treefe540f18362dd458f91e6ca9713d4819be1a92e1 /src
parent76904eda25500dd4c6969f3a2a7c0f00146fd763 (diff)
downloadpostgresql-519443162dce52a3b10372338401d63084f720b8.tar.gz
postgresql-519443162dce52a3b10372338401d63084f720b8.zip
Simplify and merge unwanted-module drop logic in AdjustUpgrade.pm.
In be7800674 and followups, we failed to notice that there was already a better way to do it: instead of using DROP DATABASE IF EXISTS, we can check the list of existing DBs. Also, there seems no reason not to merge this into the pre-existing code for getting rid of unwanted module databases. Discussion: https://postgr.es/m/1066872.1710006597@sss.pgh.pa.us
Diffstat (limited to 'src')
-rw-r--r--src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm19
1 files changed, 7 insertions, 12 deletions
diff --git a/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm b/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
index 250aa001cf5..5be918229e5 100644
--- a/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
+++ b/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
@@ -86,7 +86,7 @@ sub adjust_database_contents
# remove dbs of modules known to cause pg_upgrade to fail
# anything not builtin and incompatible should clean up its own db
- foreach my $bad_module ('test_ddl_deparse', 'tsearch2')
+ foreach my $bad_module ('adminpack', 'test_ddl_deparse', 'tsearch2')
{
if ($dbnames{"contrib_regression_$bad_module"})
{
@@ -94,6 +94,12 @@ sub adjust_database_contents
"drop database contrib_regression_$bad_module");
delete($dbnames{"contrib_regression_$bad_module"});
}
+ if ($dbnames{"regression_$bad_module"})
+ {
+ _add_st($result, 'postgres',
+ "drop database regression_$bad_module");
+ delete($dbnames{"regression_$bad_module"});
+ }
}
# avoid no-path-to-downgrade-extension-version issues
@@ -106,17 +112,6 @@ sub adjust_database_contents
'drop extension if exists test_ext7');
}
- # we removed the adminpack extension in v17
- if ($old_version < 17)
- {
- _add_st($result, 'postgres',
- 'drop database if exists contrib_regression_adminpack');
- _add_st($result, 'postgres',
- 'drop database if exists regression_adminpack');
- delete($dbnames{'contrib_regression_adminpack'});
- delete($dbnames{'regression_adminpack'});
- }
-
# we removed this test-support function in v17
if ($old_version >= 15 && $old_version < 17)
{