pgsql: Rethink behavior of CREATE OR REPLACE during CREATE EXTENSION.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Rethink behavior of CREATE OR REPLACE during CREATE EXTENSION.
Date: 2011-07-23 21:00:02
Message-ID: E1QkjIo-0003sg-RP@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Rethink behavior of CREATE OR REPLACE during CREATE EXTENSION.

The original implementation simply did nothing when replacing an existing
object during CREATE EXTENSION. The folly of this was exposed by a report
from Marc Munro: if the existing object belongs to another extension, we
are left in an inconsistent state. We should insist that the object does
not belong to another extension, and then add it to the current extension
if not already a member.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/988cccc620dd8c16d77f88ede167b22056176324

Modified Files
--------------
src/backend/catalog/heap.c | 2 +-
src/backend/catalog/pg_collation.c | 2 +-
src/backend/catalog/pg_conversion.c | 2 +-
src/backend/catalog/pg_depend.c | 32 +++++++++++++++++++++++++++++++-
src/backend/catalog/pg_namespace.c | 2 +-
src/backend/catalog/pg_operator.c | 2 +-
src/backend/catalog/pg_proc.c | 6 ++----
src/backend/catalog/pg_type.c | 11 +++++------
src/backend/commands/foreigncmds.c | 6 +++---
src/backend/commands/functioncmds.c | 10 +++++-----
src/backend/commands/opclasscmds.c | 4 ++--
src/backend/commands/proclang.c | 6 ++----
src/backend/commands/tsearchcmds.c | 9 ++++-----
src/include/catalog/dependency.h | 3 ++-
14 files changed, 61 insertions(+), 36 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2011-07-23 21:50:34 pgsql: Change EDITOR_LINENUMBER_SWITCH to an environment variable
Previous Message Robert Haas 2011-07-22 20:18:02 pgsql: Unbreak unlogged tables.