summaryrefslogtreecommitdiff
path: root/src/backend/catalog/pg_proc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/catalog/pg_proc.c')
-rw-r--r--src/backend/catalog/pg_proc.c32
1 files changed, 8 insertions, 24 deletions
diff --git a/src/backend/catalog/pg_proc.c b/src/backend/catalog/pg_proc.c
index 6cdda35d1c..a28ab74d60 100644
--- a/src/backend/catalog/pg_proc.c
+++ b/src/backend/catalog/pg_proc.c
@@ -585,51 +585,37 @@ ProcedureCreate(const char *procedureName,
if (is_update)
deleteDependencyRecordsFor(ProcedureRelationId, retval, true);
- myself.classId = ProcedureRelationId;
- myself.objectId = retval;
- myself.objectSubId = 0;
+ ObjectAddressSet(myself, ProcedureRelationId, retval);
/* dependency on namespace */
- referenced.classId = NamespaceRelationId;
- referenced.objectId = procNamespace;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, NamespaceRelationId, procNamespace);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
/* dependency on implementation language */
- referenced.classId = LanguageRelationId;
- referenced.objectId = languageObjectId;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, LanguageRelationId, languageObjectId);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
/* dependency on return type */
- referenced.classId = TypeRelationId;
- referenced.objectId = returnType;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, TypeRelationId, returnType);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
/* dependency on transform used by return type, if any */
if ((trfid = get_transform_oid(returnType, languageObjectId, true)))
{
- referenced.classId = TransformRelationId;
- referenced.objectId = trfid;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, TransformRelationId, trfid);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
}
/* dependency on parameter types */
for (i = 0; i < allParamCount; i++)
{
- referenced.classId = TypeRelationId;
- referenced.objectId = allParams[i];
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, TypeRelationId, allParams[i]);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
/* dependency on transform used by parameter type, if any */
if ((trfid = get_transform_oid(allParams[i], languageObjectId, true)))
{
- referenced.classId = TransformRelationId;
- referenced.objectId = trfid;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, TransformRelationId, trfid);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
}
}
@@ -642,9 +628,7 @@ ProcedureCreate(const char *procedureName,
/* dependency on support function, if any */
if (OidIsValid(prosupport))
{
- referenced.classId = ProcedureRelationId;
- referenced.objectId = prosupport;
- referenced.objectSubId = 0;
+ ObjectAddressSet(referenced, ProcedureRelationId, prosupport);
recordDependencyOn(&myself, &referenced, DEPENDENCY_NORMAL);
}