| From: | Nathan Bossart <nathan(at)postgresql(dot)org> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: pg_upgrade: Use COPY for LO metadata for upgrades from < v12. |
| Date: | 2026-02-16 21:13:57 |
| Message-ID: | E1vs5um-001A6d-09@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
pg_upgrade: Use COPY for LO metadata for upgrades from < v12.
Before v12, pg_largeobject_metadata was defined WITH OIDS, so
unlike newer versions, the "oid" column was a hidden system column
that pg_dump's getTableAttrs() will not pick up. Thus, for commit
161a3e8b68, we did not bother trying to use COPY for
pg_largeobject_metadata for upgrades from older versions. This
commit removes that restriction by adjusting the query in
getTableAttrs() to pick up the "oid" system column and by teaching
dumpTableData_copy() to use COPY (SELECT ...) for this catalog,
since system columns cannot be used in COPY's column list.
Reviewed-by: Andres Freund <andres(at)anarazel(dot)de>
Discussion: https://postgr.es/m/aYzuAz_ITUpd9ZvH%40nathan
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/b33f753612846b20ed54e296a52a6a52a6c793bc
Modified Files
--------------
src/bin/pg_dump/pg_backup_archiver.c | 7 +---
src/bin/pg_dump/pg_dump.c | 77 ++++++++++++++++++------------------
2 files changed, 40 insertions(+), 44 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2026-02-16 23:42:01 | pgsql: hstore: Fix NULL pointer dereference with receive function |
| Previous Message | Tom Lane | 2026-02-16 20:20:33 | pgsql: Ensure that all three build methods install the same set of file |