From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Jim Jones <jim(dot)jones(at)uni-muenster(dot)de>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
Subject: | Re: Missing [NO] INDENT flag in XMLSerialize backward parsing |
Date: | 2025-02-21 10:46:52 |
Message-ID: | 4DCB0B25-F6E2-4918-AB35-1C2995487F23@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> On Feb 21, 2025, at 4:55 AM, Michael Paquier <michael(at)paquier(dot)xyz> wrote:
>
> On Fri, Feb 21, 2025 at 04:36:07AM -0500, Andrew Dunstan wrote:
>> The fix has broken cross version upgrade test. Maybe we need to filter out
>> NO INDENT in releases prior to 16 in AdjustUpgrade.pm?s
>
> Yes, I was just looking at that. The regex I am finishing with in
> AdjustUpgrade.pm is something like that, which is enough to discard
> the NO INDENT clause in an XMLSERIALIZE:
> --- src/test/perl/PostgreSQL/Test/AdjustUpgrade.pm
> +++ src/test/perl/PostgreSQL/Test/AdjustUpgrade
> @@ -628,6 +628,12 @@ sub adjust_new_dumpfile
> \s+FUNCTION\s2\s\(text,\stext\)\spublic\.part_hashtext_length\(text,bigint\);} {}mxg;
> }
>
> + # pre-v16 dumps do not know about XMLSERIALIZE(NO INDENT).
> + if ($old_version < 16)
> + {
> + $dump =~ s/XMLSERIALIZE\((.*)? NO INDENT\)/XMLSERIALIZE\($1\)/mg;
> + }
>
> This needs to be applied in adjust_new_dumpfile() so as the comparison
> with the old dump will be stable, is that right?
I think so. Looks good to me
Cheers
Andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Ashutosh Bapat | 2025-02-21 10:52:54 | Re: pg_recvlogical requires -d but not described on the documentation |
Previous Message | Ashutosh Bapat | 2025-02-21 10:41:59 | Re: Support NOT VALID / VALIDATE constraint options for named NOT NULL constraints |