pgsql: Report the correct is_temporary flag for column defaults. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Report the correct is_temporary flag for column defaults.
Date
Msg-id E1uwoag-000EsI-0Y@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Report the correct is_temporary flag for column defaults.

pg_event_trigger_dropped_objects() would report a column default
object with is_temporary = false, even if it belongs to a
temporary table.  This seems clearly wrong, so adjust it to
report the table's temp-ness.

While here, refactor EventTriggerSQLDropAddObject to make its
handling of namespace objects less messy and avoid duplication
of the schema-lookup code.  And add some explicit test coverage
of dropped-object reports for dependencies of temp tables.

Back-patch to v15.  The bug exists further back, but the
GetAttrDefaultColumnAddress function this patch depends on does not,
and it doesn't seem worth adjusting it to cope with the older code.

Author: Antoine Violin <violin.antuan@gmail.com>
Co-authored-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/CAFjUV9x3-hv0gihf+CtUc-1it0hh7Skp9iYFhMS7FJjtAeAptA@mail.gmail.com
Backpatch-through: 15

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/3c02c46521b01f1e60caff2d056f3da5ee98ce58

Modified Files
--------------
src/backend/commands/event_trigger.c        | 111 ++++++++++++++++++++--------
src/test/regress/expected/event_trigger.out |  37 ++++++++++
src/test/regress/sql/event_trigger.sql      |  20 +++++
3 files changed, 136 insertions(+), 32 deletions(-)


pgsql-committers by date:

Previous
From: Álvaro Herrera
Date:
Subject: pgsql: Improve comment about snapshot macros
Next
From: Nathan Bossart
Date:
Subject: pgsql: Move named LWLock tranche requests to shared memory.