Thread: pgsql: Event Trigger for table_rewrite

pgsql: Event Trigger for table_rewrite

From
Simon Riggs
Date:
Event Trigger for table_rewrite

Generate a table_rewrite event when ALTER TABLE
attempts to rewrite a table. Provide helper
functions to identify table and reason.

Intended use case is to help assess or to react
to schema changes that might hold exclusive locks
for long periods.

Dimitri Fontaine, triggering an edit by Simon Riggs

Reviewed in detail by Michael Paquier

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/618c9430a82860c84a3be2711eec2c3b43573b2a

Modified Files
--------------
doc/src/sgml/event-trigger.sgml             |  150 +++++++++++++++++++++
doc/src/sgml/func.sgml                      |   85 ++++++++++--
src/backend/commands/event_trigger.c        |  192 +++++++++++++++++++++++++--
src/backend/commands/tablecmds.c            |   64 ++++++---
src/backend/utils/cache/evtcache.c          |    2 +
src/include/catalog/pg_proc.h               |    4 +
src/include/commands/event_trigger.h        |    6 +
src/include/utils/builtins.h                |    2 +
src/include/utils/evtcache.h                |    3 +-
src/test/regress/expected/event_trigger.out |   38 ++++++
src/test/regress/parallel_schedule          |    5 +-
src/test/regress/serial_schedule            |    2 +-
src/test/regress/sql/event_trigger.sql      |   42 ++++++
13 files changed, 556 insertions(+), 39 deletions(-)