aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/commands/extension.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/backend/commands/extension.c b/src/backend/commands/extension.c
index ed0691592ef..0eb0b316fc4 100644
--- a/src/backend/commands/extension.c
+++ b/src/backend/commands/extension.c
@@ -2788,7 +2788,7 @@ AlterExtensionNamespace(const char *extensionName, const char *newschema, Oid *o
{
Oid extensionOid;
Oid nspOid;
- Oid oldNspOid = InvalidOid;
+ Oid oldNspOid;
AclResult aclresult;
Relation extRel;
ScanKeyData key[2];
@@ -2871,6 +2871,9 @@ AlterExtensionNamespace(const char *extensionName, const char *newschema, Oid *o
objsMoved = new_object_addresses();
+ /* store the OID of the namespace to-be-changed */
+ oldNspOid = extForm->extnamespace;
+
/*
* Scan pg_depend to find objects that depend directly on the extension,
* and alter each one's schema.
@@ -2917,12 +2920,6 @@ AlterExtensionNamespace(const char *extensionName, const char *newschema, Oid *o
objsMoved);
/*
- * Remember previous namespace of first object that has one
- */
- if (oldNspOid == InvalidOid && dep_oldNspOid != InvalidOid)
- oldNspOid = dep_oldNspOid;
-
- /*
* If not all the objects had the same old namespace (ignoring any
* that are not in namespaces), complain.
*/