ALTER TABLE on system catalogs
Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Tom Lane <tgl@sss.pgh.pa.us>, Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2018-08-21T15:04:41Z
Lists: pgsql-hackers
Attachments
- v2-0001-Ignore-attempts-to-add-TOAST-table-to-shared-or-c.patch (text/plain) patch v2-0001
On 20/08/2018 15:34, Tom Lane wrote: > Andres Freund <andres@anarazel.de> writes: >> On 2018-08-20 14:38:25 +0200, Peter Eisentraut wrote: >>> Do you have an alternative in mind? > >> One is to just not do anything. I'm not sure I'm on board with the goal >> of changing things to make DDL on system tables more palatable. > > FWIW, I agree with doing as little as possible here. I'd be on board > with Andres' suggestion of just swapping the two code stanzas so that > the no-op case doesn't error out. As soon as you go beyond that, you > are in wildly unsafe and untested territory. That doesn't solve the original problem, which is being able to set reloptions on pg_attribute, because pg_attribute doesn't have a toast table but would need one according to existing rules. Attached is a patch that instead moves those special cases into needs_toast_table(), which was one of the options suggested by Andres. There were already similar checks there, so I guess this makes a bit of sense. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
Ignore attempts to add TOAST table to shared or catalog tables
- 590a87025b0a 12.0 landed