Re: Broken HOT chains in system catalogs

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
Cc: pgsql-hackers@postgreSQL.org
Date: 2011-04-15T19:35:13Z
Lists: pgsql-hackers
"Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:
> Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> This amounts to assuming that no new indexes get added to system
>> catalogs after initdb, or at least not during concurrent
>> operations wherein indcheckxmin would be important.
 
> Sounds reasonable, but can we enforce it through locks rather than
> assuming, or isn't there a clear way to do that without risking
> deadlocks?

Well, we already enforce it through the allow_system_table_mods mechanism:

regression=# create index foo on pg_index(indcheckxmin);
ERROR:  permission denied: "pg_index" is a system catalog

Yes, you can turn that off if you try hard enough, but it's on your own
head to know the consequences.

			regards, tom lane