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

Commit 665cafe

Browse files
committed
Fix cross-version upgrades with XMLSERIALIZE(NO INDENT)
Dumps from versions older than v16 do not know about NO INDENT in a XMLSERIALIZE() clause. This commit adjusts AdjustUpgrade.pm so as NO INDENT is discarded in the contents of the new dump adjusted for comparison when the old version is v15 or older. This should be enough to make the cross-version upgrade tests pass. Per report from buildfarm member crake. Oversight in 984410b. Reviewed-by: Andrew Dunstan <andrew@dunslane.net> Discussion: https://postgr.es/m/88b183f1-ebf9-4f51-9144-3704380ccae7@dunslane.net Backpatch-through: 16
1 parent 329304c commit 665cafe

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -636,6 +636,12 @@ sub adjust_new_dumpfile
636636
$dump =~ s ['version', '\d+'::integer,]
637637
['version', '000000'::integer,]mg;
638638

639+
# pre-v16 dumps do not know about XMLSERIALIZE(NO INDENT).
640+
if ($old_version < 16)
641+
{
642+
$dump =~ s/XMLSERIALIZE\((.*)? NO INDENT\)/XMLSERIALIZE\($1\)/mg;
643+
}
644+
639645
if ($old_version < 14)
640646
{
641647
# Suppress noise-word uses of IN in CREATE/ALTER PROCEDURE.

0 commit comments

Comments
 (0)