Re: Add more sanity checks around callers of changeDependencyFor()
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Michael Paquier <michael@paquier.xyz>, Andres Freund <andres@anarazel.de>,
Heikki Linnakangas <hlinnaka@iki.fi>,
Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-07-10T15:04:48Z
Lists: pgsql-hackers
Alvaro Herrera <alvherre@alvh.no-ip.org> writes: > On 2023-Jul-10, Tom Lane wrote: >> The user has altered properties of an extension member >> object locally within the database, but has not changed the extension's >> installation script to match. > If I were developing an extension and decided, down the line, to have > some objects in another schema, I would certainly increment the > extension's version number and have a new script to move the object. I > would never expect the user to do an ALTER directly (and it makes no > sense for me as an extension developer to do it manually, either.) It's certainly poor practice, but I could see doing it early in an extension's development (while you're still working towards 1.0). ISTR that we discussed forbidding such changes way back when the extension mechanism was invented, and decided against it on the grounds that (a) it'd be nanny-ism, (b) we'd have to add checks in an awful lot of places and it'd be easy to miss some, and (c) forbidding superusers from doing anything they want is generally not our style. We could reconsider that now, but I think we'd probably land on the same place. regards, tom lane
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add more sanity checks with callers of changeDependencyFor()
- 9b286858e3ab 17.0 landed
-
Fix ALTER EXTENSION SET SCHEMA with objects outside an extension's schema
- 914e72e6e8d3 11.21 landed
- 02021f1b2f65 12.16 landed
- f5b075adcf4c 13.12 landed
- 235e716bc24d 14.9 landed
- d1e0f408cbe2 15.4 landed
- 55c95f24cd7c 16.0 landed
- bd5ddbe8666a 17.0 landed