Replace pg_class.reltriggers with relhastriggers, which is just a boolean hint
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Nov 2008 21:24:33 +0000 (21:24 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 9 Nov 2008 21:24:33 +0000 (21:24 +0000)
commit18524e0db0df9431e84ff73d6f317c5bf4ef674a
tree4a484db4854d31aba6bfff136a9ce5eea5e105db
parent3e69723c18da1eb95b631dd42632a4241edb5c97
Replace pg_class.reltriggers with relhastriggers, which is just a boolean hint
("there might be triggers") rather than an exact count.  This is necessary
catalog infrastructure for the upcoming patch to reduce the strength of
locking needed for trigger addition/removal.  Split out and committed
separately for ease of reviewing/testing.

In passing, also get rid of the unused pg_class columns relukeys, relfkeys,
and relrefs, which haven't been maintained in many years and now have no
chance of ever being maintained (because of wishing to avoid locking).

Simon Riggs
13 files changed:
doc/src/sgml/catalogs.sgml
src/backend/catalog/heap.c
src/backend/catalog/system_views.sql
src/backend/commands/trigger.c
src/backend/rewrite/rewriteDefine.c
src/backend/utils/cache/relcache.c
src/bin/pg_dump/pg_dump.c
src/bin/pg_dump/pg_dump.h
src/bin/psql/describe.c
src/include/catalog/catversion.h
src/include/catalog/pg_attribute.h
src/include/catalog/pg_class.h
src/test/regress/expected/rules.out