Event Trigger for table_rewrite

Enterprise / PostgreSQL - Simon Riggs [2ndQuadrant.com] - 7 December 2014 09:55 UTC

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

618c943 Event Trigger for table_rewrite
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(-)

Upstream: git.postgresql.org


  • Share