OSDN Git Service

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)
commite4718f2c9eff30dedd022fac53a1f874aa1955d8
treeafd1c98430fa8ba0ae6efe897745cc314d08eaed
parent1d577f5e49400465bd8cc3f91b67d03a551528c3
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