| From: | shihao zhong <zhong950419(at)gmail(dot)com> |
|---|---|
| To: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> |
| Cc: | pgsql-hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, ilmari(at)ilmari(dot)org |
| Subject: | Re: [PG19] pg_upgrade --check passes, then the upgrade fails |
| Date: | 2026-10-29 02:11:20 |
| Message-ID: | CAGRkXqSO3cUO=RNhRXN4LE86M=7LWikND1-RMLHLQSStjr+ukg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Masahiko,
I think that a better fix for v19 would be to check these particular
> cases (i.e., standard_conforming_strings = off, escape_string_warning,
> and user-defined uuid<->bytea casts) only if the old cluster is 18 or
> older, like check_for_not_null_inheritance() and
> check_for_gist_inet_ops() do, and we can seek a more generic approach
> for v20+.
Thanks for your testing. Okay, let's take care of 19 first. I can create a
different
thread for 20+.
I added two checks next to check_for_gist_inet_ops(). Both run only
when the old cluster is 18 or older. The first lists roles, databases
and functions that set standard_conforming_strings to off or set
escape_string_warning. The second lists user casts between uuid and
bytea.
I attached a version for 19 too.
| Attachment | Content-Type | Size |
|---|---|---|
| v4-0001-pg_upgrade-Check-for-settings-and-casts-that-19-c.patch | application/octet-stream | 12.2 KB |
| nocfbot-v4-REL_19-0001-pg_upgrade-Check-for-settings-and-casts-that-19-c.patch | application/octet-stream | 12.1 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2026-10-29 02:19:14 | Re: WAL record CRC calculated incorrectly because of underlying buffer modification |
| Previous Message | shihao zhong | 2026-10-29 02:03:10 | [PG19] NOT NULL constraint is trusted by snapshots older than it |