On Sun, Dec 07, 2025 at 11:15:13PM -0500, Tom Lane wrote:
> I think that this is really a bug in the Xversion-update test, because
> I don't see why we'd be holding src/test/modules libraries to the
> standard of can-be-upgraded-across-versions.  But maybe there's
> something I'm missing?

Yes, I've noticed that a couple of minutes ago, trying to make heads
and tails out of it.  I thought that the tets modules libraries were
not getting pulled in the cross-version upgrades but here we are.

From what I can see, this specific failure is caused by
src/test/modules/gin/ where the module has forgotten to drop the
extension injection_points, but there is a total of three modules that
could have hit the problem, as of:
- src/test/modules/nbtree/ (could be hit in the future as it uses
injection_points).
- src/test/modules/gin/
- src/test/modules/typcache/

And I was wondering whether I should just plant more items in
AdjustUpgrade.pm, like in the attached.  We need that for gin when
dealing with an old server of at least v17, and for typcache with v18.
The nbtree test is so recent that it does not matter.
TestUpgradeXversion.pm has an ON_ERROR_STOP=1 so the version check is 
required.
--
Michael
From b46344c697771e5496e5d837b9e8e6e2d6b88b01 Mon Sep 17 00:00:00 2001
From: Michael Paquier <[email protected]>
Date: Mon, 8 Dec 2025 13:51:40 +0900
Subject: [PATCH] Adjust upgrade outputs

---
 src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm b/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
index 7224c286e1df..78d060c989ab 100644
--- a/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
+++ b/src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
@@ -102,6 +102,19 @@ sub adjust_database_contents
 		}
 	}
 
+	# Remove databases that are known to cause upgrades to fail because of
+	# updates done in the test module injection_points in v19 that these rely
+	# on.
+	if ($old_version >= 18)
+	{
+		_add_st($result, 'postgres', 'drop database regression_typcache');
+	}
+
+	if ($old_version >= 17)
+	{
+		_add_st($result, 'postgres', 'drop database regression_gin');
+	}
+
 	# avoid no-path-to-downgrade-extension-version issues
 	if ($dbnames{contrib_regression_test_extensions})
 	{
-- 
2.51.0

Attachment: signature.asc
Description: PGP signature

Reply via email to