Implement "ALTER EXTENSION ADD object".
Tom Lane <tgl@sss.pgh.pa.us>
Implement "ALTER EXTENSION ADD object". This is an essential component of making the extension feature usable; first because it's needed in the process of converting an existing installation containing "loose" objects of an old contrib module into the extension-based world, and second because we'll have to use it in pg_dump --binary-upgrade, as per recent discussion. Loosely based on part of Dimitri Fontaine's ALTER EXTENSION UPGRADE patch.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/extend.sgml | modified | +12 −0 |
| doc/src/sgml/ref/alter_extension.sgml | modified | +170 −24 |
| src/backend/commands/extension.c | modified | +58 −1 |
| src/backend/nodes/copyfuncs.c | modified | +16 −0 |
| src/backend/nodes/equalfuncs.c | modified | +14 −0 |
| src/backend/parser/gram.y | modified | +185 −1 |
| src/backend/tcop/utility.c | modified | +131 −226 |
| src/include/commands/extension.h | modified | +2 −0 |
| src/include/nodes/nodes.h | modified | +1 −0 |
| src/include/nodes/parsenodes.h | modified | +12 −3 |